主題七 最終的勝利 40 經典面試題詳解

2021-08-02 16:00:55 字數 822 閱讀 1744

面試例項----指標運算(必考知識點)

#include void main()

, ,,,

};int* p1 = (int*)(&testarray + 1); //注意

int* p2 = (int*)(*(testarray + 1) + 6);

printf("result: %d; %d; %d; %d; %d\n", *(*testarray), *(*(testarray + 1)),

*(*(testarray + 3) + 3), p1[-8],

p2[4]);

}//output:11,16,29,28,26

面試例項----除錯經驗

#includevoid main()

//output:

//h//hello world

//c

printf(const char* ,...)可變引數,無法判斷型別,printf只會按照控制字元要求進行列印,雖然型別進行了轉換,但是值沒有改變

面試例項----安全程式設計

#includeint main(int argc, char *argv) 

if( flag )

else

return 0;

} 1234567890abc output:password cracked

//區域性變數在棧中,而陣列越界覆蓋了flag,從而改變了結果

經典的c 面試題

1.介紹一下stl,詳細說明stl如何實現vector。answer stl 標準模版庫,standard template library.它由容器演算法迭代器組成。stl有以下的一些優點 可以方便容易地實現搜尋資料或對資料排序等一系列的演算法 除錯程式時更加安全和方便 即使是人們用stl在uni...

面試題40 最小的K個數

輸入n個整數,找出其中最小的k個數。例如輸入4 5 1 6 2 7 3 8 這8個數字,則最小的4個數字是1 2 3 4。分析 這道題最簡單的思路莫過於把輸入的n個整數排序,排序之後位於最前面的k個數就是最小的k個數,這種思路的時間按複雜度是o nlogn 2.1 方法一 時間複雜度為o n 的演算...

面試題40 最小的K個數

題目描述 輸入n個整數,找出其中最小的k個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4,方法一 不修改原陣列,時間複雜度o nlgk class solution if result k 1 input i result k 1 input i return...