【C語言進(jìn)階】面試題:請使用代碼判斷主機(jī)存儲(chǔ)屬于大端模式還是小端模式?
經(jīng)典面試題,有必要了解下!
1 問題描述
【C語言進(jìn)階】面試題:請使用代碼判斷主機(jī)存儲(chǔ)屬于大端模式還是小端模式?
2 示例代碼
為此寫了一段測試代碼:
?
?
int main(int argc, const char *argv[])
{
int a = 0x12345678;
unsigned char *p = (unsigned char *)&a;
?
if (*p == 0x12) {
printf("big endian
");
} else {
printf("*p = %02x
", *p);
printf("little endian
");
}
?
return 0;
}
跑一下測試結(jié)果:
正好滿足: 低地址,存儲(chǔ)低字節(jié) ,所以它是 小端存儲(chǔ) ;反之,應(yīng)該就是 大端存儲(chǔ) 。
3 總結(jié)
- 有必要了解下大端存儲(chǔ)和小端存儲(chǔ)的規(guī)則;
- 記住口訣:DD為小,諧音: 弟弟為小 ;
- **即 **低地址,低字節(jié) 為小端存儲(chǔ);反之, 低地址,高字節(jié) 為大端存儲(chǔ)。
4 更多分享
[架構(gòu)師李肯]
架構(gòu)師李肯 ( 全網(wǎng)同名 ),一個(gè)專注于嵌入式IoT領(lǐng)域的架構(gòu)師。有著近10年的嵌入式一線開發(fā)經(jīng)驗(yàn),深耕IoT領(lǐng)域多年,熟知IoT領(lǐng)域的業(yè)務(wù)發(fā)展,深度掌握IoT領(lǐng)域的相關(guān)技術(shù)棧,包括但不限于主流RTOS內(nèi)核的實(shí)現(xiàn)及其移植、硬件驅(qū)動(dòng)移植開發(fā)、網(wǎng)絡(luò)通訊協(xié)議開發(fā)、編譯構(gòu)建原理及其實(shí)現(xiàn)、底層匯編及編譯原理、編譯優(yōu)化及代碼重構(gòu)、主流IoT云平臺的對接、嵌入式IoT系統(tǒng)的架構(gòu)設(shè)計(jì)等等。擁有多項(xiàng)IoT領(lǐng)域的發(fā)明專利,熱衷于技術(shù)分享,有多年撰寫技術(shù)博客的經(jīng)驗(yàn)積累,堅(jiān)信【知識改變命運(yùn),技術(shù)改變世界】!
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
,或者深度學(xué)習(xí)的框架,還有怎么優(yōu)化模型,這些都是加分項(xiàng),能有效提高面試通過率。本篇小編整理了一些高頻的機(jī)器學(xué)習(xí)深化方面的面試題,這些題目都是從實(shí)際面試中總結(jié)出來的,非
發(fā)表于 12-16 13:42
?1553次閱讀
隨著人工智能技術(shù)的突飛猛進(jìn),AI工程師成為了眾多求職者夢寐以求的職業(yè)。想要拿下這份工作,面試的時(shí)候得展示出你不僅技術(shù)過硬,還得能解決問題。所以,提前準(zhǔn)備一些面試常問的問題,比如機(jī)器學(xué)習(xí)的那些算法
發(fā)表于 12-13 15:06
?457次閱讀
,或者深度學(xué)習(xí)的框架,還有怎么優(yōu)化模型,這些都是加分項(xiàng),能有效提高面試通過率。本篇小編整理了一些高頻的機(jī)器學(xué)習(xí)方面的面試題,這些題目都是從實(shí)際面試中總結(jié)出來的,非常具
發(fā)表于 12-04 17:00
?825次閱讀
語句和條件運(yùn)算符。這些結(jié)構(gòu)不僅增強(qiáng)了代碼的靈活性,還提高了程序的可讀性和可維護(hù)性。本文將深入探討C語言中的主要條件判斷語句,包括它們的語法、使用方法及實(shí)際應(yīng)用,通過
發(fā)表于 11-09 01:10
?298次閱讀
CMOS和非門電路的輸入端電阻模式涉及多個(gè)方面,包括電阻的作用、連接方式以及如何影響電路性能。以下是對CMOS和非門電路輸入端電阻模式的詳細(xì)分析:
發(fā)表于 10-01 17:30
?764次閱讀
USB主機(jī)模式(USB Host Mode)是指設(shè)備(如智能手機(jī)、平板電腦或某些類型的計(jì)算機(jī))能夠連接到USB設(shè)備(如鍵盤、鼠標(biāo)、存儲(chǔ)設(shè)備等),并作為USB主機(jī)來控制這些設(shè)備。這種
發(fā)表于 09-25 09:08
?1246次閱讀
USB(通用串行總線)是一種廣泛使用的接口技術(shù),用于連接計(jì)算機(jī)和外部設(shè)備。USB主機(jī)模式和設(shè)備模式是USB通信中的兩種不同角色,它們定義了設(shè)備和計(jì)算機(jī)之間的通信方式。以下是對這兩種模式
發(fā)表于 09-25 09:06
?792次閱讀
電子發(fā)燒友網(wǎng)站提供《在EK-TM4C123GXL LaunchPad上使用USB主機(jī)模式.pdf》資料免費(fèi)下載
發(fā)表于 09-19 10:56
?0次下載
直接將 .hex 文件轉(zhuǎn)換回原始的 C 語言代碼是不可能的,因?yàn)?.hex 文件是二進(jìn)制文件,它包含了單片機(jī)程序編譯后的機(jī)器碼,這些機(jī)器碼與原始的 C
發(fā)表于 09-02 10:37
?2134次閱讀
請問 CYW20829 深度睡眠模式是否可以通過遠(yuǎn)程 BLE 喚醒,還是必須從主機(jī)喚醒? 謝謝!
發(fā)表于 05-28 07:55
。 但在從機(jī)模式時(shí)對主機(jī)發(fā)送的地址無應(yīng)答,進(jìn)入不了中斷。 地址設(shè)置和主機(jī)端的發(fā)送地址一致,應(yīng)答位也設(shè)置了。用示波器和邏輯分析儀觀察時(shí)序沒有任何問題。大致的初始化程序如下。
I2
發(fā)表于 05-06 08:45
STM32(MDK)默認(rèn)大端還是小端?
發(fā)表于 04-30 06:02
在 C 語言中,數(shù)據(jù)類型指的是用于聲明不同類型的變量或函數(shù)的一個(gè)廣泛的系統(tǒng)。變量的類型決定了變量存儲(chǔ)占用的空間,以及如何解釋存儲(chǔ)的位模式。
發(fā)表于 03-20 10:56
?469次閱讀
詳細(xì)介紹如何判斷降壓斬波電路的工作模式,并從電路原理和特性等方面展開討論。 一、降壓斬波電路的工作原理 降壓斬波電路的主要部分包括輸入電容、電感、開關(guān)管和輸出電容等元器件。通過開關(guān)管的開關(guān)控制,將輸入電壓的
發(fā)表于 03-14 16:21
?2613次閱讀
接近開關(guān)如何去判斷屬于NPN還是PNP?怎么去正確接線 要判斷一個(gè)開關(guān)是屬于NPN型還是PNP型
發(fā)表于 02-18 17:13
?2590次閱讀
評論