inih (INI Not Invented Here 的縮寫(xiě)) 是一個(gè)簡(jiǎn)單的用 C 語(yǔ)言編寫(xiě)的 INI 文件解析器。
先說(shuō)內(nèi)存 柿子撿軟的捏,以前做項(xiàng)目的時(shí)候被大小端的問(wèn)題坑過(guò),那種酸爽就像藍(lán)天白云,晴空萬(wàn)里忽然暴風(fēng)雨,突如其來(lái)的BUG,讓原本不充裕的時(shí)間更加雪上加霜;雖然很基礎(chǔ),但是能力有限,也難免出現(xiàn)錯(cuò)誤和紕漏,請(qǐng)各位大佬們?cè)谟懻撝袩o(wú)情指正我。
Python是一門(mén)解釋器語(yǔ)言,代碼通過(guò)解釋器執(zhí)行,Python存在多種解釋器,分別基于不同語(yǔ)言開(kāi)發(fā),每個(gè)解釋器有不同的特點(diǎn)。
編程習(xí)慣的培養(yǎng)需要的是一個(gè)長(zhǎng)期的過(guò)程,需要不斷地總結(jié),積累,并且我們需要從意識(shí)上認(rèn)識(shí)其重要性,一個(gè)良好的編程習(xí)慣對(duì)于我們能力的提高也是有巨大的幫助的。下面是筆者在閱讀《專業(yè)嵌入式軟件開(kāi)發(fā)》這本書(shū)時(shí)所看到的一些關(guān)于編程好習(xí)慣的總結(jié),特此記錄和分享一下。
在代碼中用一堆嵌套,花大量時(shí)間寫(xiě)出漂亮的代碼但最后才發(fā)現(xiàn)無(wú)法運(yùn)行,不給任務(wù)留緩沖時(shí)間…… 這是很多新手程序員都踩過(guò)的雷。在這篇文章中,一位全棧首席開(kāi)發(fā)者總結(jié)了高級(jí)開(kāi)發(fā)人員的19個(gè)編碼原則,可以幫助新手少踩些坑。
五種IO模型包括:阻塞IO、非阻塞IO、IO多路復(fù)用、信號(hào)驅(qū)動(dòng)IO、異步IO。
在網(wǎng)上看了不少與卡爾曼濾波相關(guān)的博客、論文,要么是只談理論、缺乏感性,或者有感性認(rèn)識(shí),缺乏理論推導(dǎo)。能兼顧二者的少之又少,直到我看到了國(guó)外的一篇博文,真的驚艷到我了,不得不佩服作者這種細(xì)致入微的精神,翻譯過(guò)來(lái)跟大家分享一下。
說(shuō)到指針,估計(jì)還是有很多小伙伴都還是云里霧里的,有點(diǎn)“知其然,而不知其所以然”。但是,不得不說(shuō),學(xué)了指針,C語(yǔ)言才能算是入門(mén)了。指針是C語(yǔ)言的「精華」,可以說(shuō),對(duì)對(duì)指針的掌握程度,「直接決定」了你C語(yǔ)言的編程能力。
說(shuō)下我的體驗(yàn),從研究生畢業(yè)到現(xiàn)在,我已經(jīng)在ASML工作了11年多,我來(lái)回答這個(gè)問(wèn)題是比較客觀,也比較有發(fā)言權(quán)的。965,很少加班,法定加班費(fèi),可以錯(cuò)開(kāi)上下班高峰期,彈性工作時(shí)間;工作氛圍很好,人際關(guān)系簡(jiǎn)單,很適合像我這種簡(jiǎn)單的碼農(nóng);技術(shù)多樣性,可以學(xué)到并實(shí)踐多種主流技術(shù)。
嵌入式的工程師一般都知道CAN總線廣泛應(yīng)用到汽車中,其實(shí)船艦電子設(shè)備通信也廣泛使用CAN,隨著國(guó)家對(duì)海防的越來(lái)越重視,對(duì)CAN的需求也會(huì)越來(lái)越大。這個(gè)暑假,通過(guò)參加蘇州社會(huì)實(shí)踐,去某船舶電氣公司實(shí)習(xí)幾周,也借此機(jī)會(huì),學(xué)習(xí)了一下CAN總線。
關(guān)于NOR Flash下載算法每個(gè)IDE/工具都有自己的一套設(shè)計(jì),雖然基本設(shè)計(jì)理念是一樣的,但細(xì)節(jié)方面還是有區(qū)別。
數(shù)據(jù)結(jié)構(gòu)這門(mén)課程是計(jì)算機(jī)相關(guān)專業(yè)的基礎(chǔ)課,數(shù)據(jù)結(jié)構(gòu)指的是數(shù)據(jù)在計(jì)算機(jī)中的存儲(chǔ)、組織方式。我們?cè)趯W(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)時(shí)候,會(huì)遇到各種各樣的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),比如堆棧、隊(duì)列、數(shù)組、鏈表、樹(shù)...這些基本的數(shù)據(jù)結(jié)構(gòu)類型有各自的特點(diǎn),不同數(shù)據(jù)結(jié)構(gòu)適用于解決不同場(chǎng)景下的問(wèn)題。
C/C++中不完全類型有三種不同形式:void、未指定長(zhǎng)度的數(shù)組以及具有非指定內(nèi)容的結(jié)構(gòu)和聯(lián)合。使用不完全類型的指針或引用,不需要知道類型的全部?jī)?nèi)容。
說(shuō)到指針,估計(jì)還是有很多小伙伴都還是云里霧里的,有點(diǎn)“知其然,而不知其所以然”。但是,不得不說(shuō),學(xué)了指針,C語(yǔ)言才能算是入門(mén)了。指針是C語(yǔ)言的「精華」,可以說(shuō),對(duì)對(duì)指針的掌握程度,「直接決定」了你C語(yǔ)言的編程能力。
目前來(lái)說(shuō),這十幾年內(nèi)是不可能淘汰的,即使面臨著人工AI、大數(shù)據(jù)和云計(jì)算等技術(shù)的多方面競(jìng)爭(zhēng),單片機(jī)也可以說(shuō)是立于不敗之地!畢竟需求放在那里。單片機(jī)技術(shù)是門(mén)基礎(chǔ),也是塊通往其他技術(shù)的敲門(mén)磚。
在我們閱讀一些大型的代碼或者庫(kù)的時(shí)候,一般都會(huì)看到有#error和#warning,可能有些小伙伴一掃而過(guò),并沒(méi)有了解清楚這些預(yù)編譯指令到底該怎么用,寫(xiě)了很久的代碼估計(jì)也重來(lái)沒(méi)有敲過(guò)他們。
Flash存儲(chǔ)器是一種非易失性存儲(chǔ)器,根據(jù)結(jié)構(gòu)的不同可以將其分為NOR Flash和NAND Flash兩種。
嵌入式系統(tǒng)的定義,以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
相信很多小伙伴都知道局部變量是線程安全的,那你知道為什么局部變量是線程安全的嗎?多個(gè)線程同時(shí)訪問(wèn)共享變量時(shí),會(huì)導(dǎo)致并發(fā)問(wèn)題。那么,如果將變量放在方法內(nèi)部,是不是還會(huì)存在并發(fā)問(wèn)題呢?如果不存在并發(fā)問(wèn)題,那么為什么不會(huì)存在并發(fā)問(wèn)題呢?
一文了解RocketMQ的整體架構(gòu)設(shè)計(jì)。