嵌入式筆試刷題(第52天)
11. assert 是什么,需要包含什么頭文件?怎樣禁用?
? 答案:
- assert 是一個 宏
- 頭文件:#include <assert.h>
- 禁用方式:在 #include <assert.h> 之前添加:
?? 說明:assert
在調(diào)試時用于檢查表達式是否為真,若為假則終止程序,發(fā)布版本常禁用。
12. 面向?qū)ο蟮娜齻€基本特征
? 答案:
- 封裝(Encapsulation)
- 繼承(Inheritance)
- 多態(tài)(Polymorphism)
?? 說明: 是 OOP 的三大核心概念,分別對應(yīng)數(shù)據(jù)保護、復用和行為靈活性。
13. 代碼輸出分析
int a[7] = {1,2,3,4,5,6,7}; int *ptr = (int *)(&a + 1); printf("%d %d", *(a+1), *(ptr-1));
? 答案:2 7
?? 解釋:
a+1
指向 a[1],值為 2;&a
是整個數(shù)組地址,類型是int (*)[7]
;&a + 1
跨過整個數(shù)組,相當于指向a[7]
的地址,即下一個 int;(int *)(&a + 1)
強轉(zhuǎn)為 int* 后回退一位:ptr-1 = &a[6]
,值為 7
14. 重定向符說明
|
將標準輸出(stdout)重定向到文件 |
|
將標準錯誤輸出(stderr)重定向到文件 |
|
將標準錯誤輸出重定向到標準輸出 |
|
將文件描述符 4 重定向為標準輸入(fd 0) |
|
合并兩個文件內(nèi)容輸出到 file3(覆蓋) |
|
剩余60%內(nèi)容,訂閱專欄后可繼續(xù)查看/也可單篇購買
嵌入式筆試專欄 文章被收錄于專欄
本專欄系統(tǒng)整理了嵌入式方向筆試中常見的知識點和高頻考題,涵蓋基礎(chǔ)理論、常用算法、C語言陷阱、操作系統(tǒng)原理、驅(qū)動開發(fā)、常見外設(shè)通信協(xié)議(如 I2C/SPI/UART)、RTOS、Linux 內(nèi)核、以及實用電路知識等內(nèi)容。