幾道C/C++小題,看看你會不會
- 2019 年 10 月 31 日
- 筆記
來源:公眾號【編程珠璣】
作者:守望先生
ID:shouwangxiansheng
構造函數
下面使用無參構造函數聲明變數的方式對嗎?為什麼?應該如何修改?
Test test();
答案參考《認真理一理C++的構造函數》。
數組和指針
下面程式碼的輸出結果是什麼?
//實際中千萬不要這麼寫 #include<stdio.h> int main(void) { int a[5] = {1,2,3,4,5}; int *p = (int*)(&a+1); printf("%d,%d",*(a+1),*(p-1)); return 0; }
答案參考《C語言入坑指南-數組之謎》。
main
C語言main函數標準寫法是什麼?
A main() B void main() C int main(void) D int main() E int main(int argc,char *argv[]) F int main(int argc,char *argv[],char *envp[]
答案參考《C語言的main函數到底該怎麼寫》。
複雜聲明
下面的聲明是什麼含義
void(*signal(int,void(*fun)(int)))(int);
答案參考《高級指針話題-函數指針》和《有了它,再也不怕複雜聲明了》。
const關鍵字
下面const修飾的變數,分別表示什麼是只讀的?
const char *a int* const p const int c
答案參考《const關鍵字到底該怎麼用》。