在C語言中,兩個函數的名稱不能相同,否則會導致編譯錯誤。而在C++中,函數名相同而參數數據類型不同或參數個數不同或二者皆不同的兩個函數被解釋爲重載。下面就由本站小編爲大家介紹一下C和C++經典筆試題及答案的文章,歡迎閱讀。
C和C++經典筆試題及答案篇1
1. 用預處理指令#define聲明一個常數,用以表明1年中有多少秒(忽略閏年問題)。
答案:#define SECONDS_PER_YEAR(60*60*24*365)UL
應該意識到表達式將使一個16位機的整形數溢出,因此要用到長整型符號L,表達式中UL表示無符號長整型。
2. 寫一個“標準”宏MIN,這個宏輸入連個參數並返回較小的一個。
答案:#define MIN(A,B) ((A)<=(B)?(A):(B));懂得在宏中小心的吧參數用括號擴起來
3. sizeof 的一些考察
char* ss1=”0123456789”; char ss2=”0123456789”; char ss3[100]=”0123456789”;
int ss4[100]; char q1=”abc”; char q2=”an”; char* q3=”an”;
答案:ss1是一個字元指針,指針的大小是一個確定的值,就是4,sizeof(ss1)=4;
ss2是一個字元數組,這個數組最初的大小未定,填充值是“0123456789”,一個字元佔一位,再加上隱含的“