- 相關(guān)推薦
軟件工程師面試題目
1. 用預處理指令#define 聲明一個(gè)常數,用以表明1年中有多少秒(忽略閏年問(wèn)題)

#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL
我在這想看到幾件事情:
1). #define 語(yǔ)法的基本知識(例如:不能以分號結束,括號的使用,等等)
2). 懂得預處理器將為你計算常數表達式的值,因此,直接寫(xiě)出你是如何計算一年中有多少秒而不是計算出實(shí)際的值,是更清晰而沒(méi)有代價(jià)的。
3). 意識到這個(gè)表達式將使一個(gè)16位機的整型數溢出-因此要用到長(cháng)整型符號L,告訴編譯器這個(gè)常數是的長(cháng)整型數。
4). 如果你在你的表達式中用到UL(表示無(wú)符號長(cháng)整型),那么你有了一個(gè)好的起點(diǎn)。記住,第一印象很重要。
2. 寫(xiě)一個(gè)“標準”宏MIN,這個(gè)宏輸入兩個(gè)參數并返回較小的一個(gè)。
#define MIN(A,B) ((A) <= (B) (A) : ))
C/C++試題集 C/C++ Development這個(gè)測試是為下面的目的而設的:
1). 標識#define在宏中應用的基本知識。這是很重要的,因為直到嵌入(inline)操作符變?yōu)闃藴蔆的一部分,宏是方便產(chǎn)生嵌入代碼的唯一方法,對于嵌入式系統來(lái)說(shuō),為了能達到要求的性能,嵌入代碼經(jīng)常是必須的方法。
2). 三重條件操作符的知識。這個(gè)操作符存在C語(yǔ)言中的原因是它使得編譯器能產(chǎn)生比if-then-else更優(yōu)化的代碼,了解這個(gè)用法是很重要的。
3). 懂得在宏中小心地把參數用括號括起來(lái)
4). 我也用這個(gè)問(wèn)題開(kāi)始討論宏的副作用,例如:當你寫(xiě)下面的代碼時(shí)會(huì )發(fā)生什么事?
Least = MIN(*p++, b);
3. 預處理器標識#error的目的是什么?
如果你不知道答案,請看參考文獻1。這問(wèn)題對區分一個(gè)正常的伙計和一個(gè)書(shū)呆子是很有用的。只有書(shū)呆子才會(huì )讀C語(yǔ)言課本的附錄去找出象這種
問(wèn)題的答案。當然如果你不是在找一個(gè)書(shū)呆子,那么應試者最好希望自己不要知道答案。
【軟件工程師面試題目】相關(guān)文章:
軟件工程師尷尬的面試11-08
電話(huà)面試 題目11-20
求故事:軟件工程師的面試囧事11-13
海信面試英語(yǔ)題目06-15
史上最全軟件筆試題目及答案04-03
寶潔面試題目09-30
面試的測試智力的常規題目!11-20
07威盛筆試題目 軟件部門(mén)11-21
517昆明CD面試 面試題目11-20
小升初面試筆試及面試題目11-21