嵌入式系統的核心是由一個或幾個預先程式設計好以用來執行少數幾項任務的微處理器或者微控制器組成。下面是小編整理的關於嵌入式工程師筆試面試題目,希望大家認真閱讀!
一.1、簡答題。下面的題目必須全部答對才給分(20分):
1、如何在C中初始化一個字元陣列。
2、如何在C中為一個數組分配空間。
3、如何初始化一個指標陣列。
4、如何定義一個有10個元素的整數型指標陣列。
5、s[10]的另外一種表達方式是什麼。
6、GCC3.2.2版本中支援哪幾種程式語言。
7、要使用CHAR_BIT需要包含哪個標頭檔案。
8、對(-1.2345)取整是多少?
9、如何讓區域性變數具有全域性生命期。
10、C中的常量字串應在何時定義?
11、如何在兩個.c檔案中引用對方的變數。
12、使用malloc之前需要做什麼準備工作。
13、realloc函式在使用上要注意什麼問題。
14、strtok函式在使用上要注意什麼問題。
15、gets函式在使用上要注意什麼問題。
16、C語言的詞法分析在長度規則方面採用的是什麼策略?
17、a+++++b所表示的是什麼意思?有什麼問題?
18、如何定義Bool變數的TRUE和FALSE的值。
19、C語言的const的含義是什麼。在定義常量時,為什麼推薦使用const,而不是#define。
20、C語言的volatile的含義是什麼。使用時會對編譯器有什麼暗示。
一.2、問答題。
1、———————————————————–
“匈牙利命名法”有什麼優缺點?(2分)
2、———————————————————–
下面x,y,*p的值是多少,有什麼問題?(2分)
intx,y,z=2;
int*p=&z;
x=sizeof*p;
y=x/*p;/*x=?,*p=?,y=?,有什麼問題?*/
3、———————————————————–
下面的語句是什麼意思?如何宣告或定義才使它們更易懂?(10分)
int(*foo())();
int(*foo())[];
int(*foo[])();
(*(void(*)())0)();
void(*signal(int,void(*)(int)))(int);
4、———————————————————–
本題(2分)。一般使用malloc時,需要進行強制型別轉換,如:
char*s;s=(char*)malloc(31);
下面中???該如何填寫,才可以正確執行強制型別轉換?
int(*monthp)[31];monthp=(???)malloc(31);
5、———————————————————–
關於C語言運算子優先順序的記憶技巧是什麼?(2分)
/*下面r的值是多少*/
inthi,low,r;
hi=7;low=3;
r=hi<<4+low;
6、———————————————————–
指標和陣列的區別是什麼?用一個簡單的.宣告把它們區分開。(2分)
指標和陣列的宣告在什麼情況下是相同的?(2分)
7、———————————————————–
C語言的左值(lvalue)和右值(rvalue)的含義是什麼?(2分)
8、———————————————————–
為什麼C語言可以實現printf(char*format,…)這樣可變引數的呼叫形式?這樣有什
麼缺點?(2分)
9、———————————————————–
說明C語言中術語”宣告”"定義”"原型”的含義?(2分)
10、———————————————————–
舉一個例子,說明使用assert和防錯程式碼的區別。(5分)
11、———————————————————–
對語句ifelse與操作符?:使用場合的比較。(2分)
12、編寫一個函式,輸入一個的整型數字,可以選擇按照8/10/16進位制輸出字串。
注意邊界值。(5分)