嵌入式大廠面經(jīng) 4(持續(xù)更新中?。?/h1>
這是一個嵌入式大廠面試題專欄,每天更新高頻面試題。專欄將包含題目描述、詳細(xì)解析、相關(guān)知識點擴展以及實際代碼示例。內(nèi)容涵蓋操作系統(tǒng)、驅(qū)動開發(fā)、通信協(xié)議等核心領(lǐng)域,并結(jié)合實際項目經(jīng)驗進行分析。每道題目都會附帶面試官可能的追問方向,幫助大家更好地準(zhǔn)備面試!
1. 指針的大小
- 指針大小與系統(tǒng)架構(gòu)相關(guān),而不是與指向的數(shù)據(jù)類型相關(guān)
- 32位系統(tǒng):所有指針都是4字節(jié)
- 64位系統(tǒng):所有指針都是8字節(jié)
示例代碼:
void testPointerSize(void) { char *p1; int *p2; double *p3; void *p4; int (*p5)(int); // 函數(shù)指針 printf("char*: %d\n", sizeof(p1)); // 32位系統(tǒng)為4,64位為8 printf("int*: %d\n", sizeof(p2)); // 同上 printf("double*: %d\n", sizeof(p3)); // 同上 printf("void*: %d\n", sizeof(p4)); // 同上 printf("function*: %d\n", sizeof(p5)); // 同上 }
2. 函數(shù)指針和指針函數(shù)
函數(shù)指針
- 指向函數(shù)的指針
- 用于回調(diào)函數(shù)、函數(shù)表等場景
// 函數(shù)指針示例 typedef int (*Operation)(int, int); // 定義函數(shù)指針類型 int add(int a, int b) { return a + b; } int sub(int a, int b) { return a - b; } void testFunctionPointer(void) { Operation op = add; // 函數(shù)指針指向add函數(shù)
剩余60%內(nèi)容,訂閱專欄后可繼續(xù)查看/也可單篇購買
嵌入式面試八股文全集 文章被收錄于專欄
這是一個全面的嵌入式面試專欄。主要內(nèi)容將包括:操作系統(tǒng)(進程管理、內(nèi)存管理、文件系統(tǒng)等)、嵌入式系統(tǒng)(啟動流程、驅(qū)動開發(fā)、中斷管理等)、網(wǎng)絡(luò)通信(TCP/IP協(xié)議棧、Socket編程等)、開發(fā)工具(交叉編譯、調(diào)試工具等)以及實際項目經(jīng)驗分享。專欄將采用理論結(jié)合實踐的方式,每個知識點都會附帶相關(guān)的面試真題和答案解析。