這個週末肝了兩天,整理了一份C/C++語言面試題資源,彙總了68道常見C語言和C++相關的面試題。
文末有PDF版和詳細答案下載,有需要的小夥伴們可以自取,面試前必看必背。
下面是題目大綱:1 變數的宣告和定義有什麼區別2 簡述#ifdef、#else、#endif和#ifndef的作用3 寫出int 、bool、 float、指標變數與 “零值”比較的if語句4 結構體可以直接賦值嗎5sizeof和strlen的區別6 C 語言的關鍵字static和 C++ 的關鍵字static有什麼區別7 C 語言的malloc和 C++ 中的new有什麼區別8 寫一個 “標準”宏MIN9 ++i和i++的區別10 volatile有什麼作用11 一個引數可以既是const又是volatile嗎12 a和&a有什麼區別13 用 C 編寫一個死迴圈程式14 結構體記憶體對齊問題15 全域性變數和區域性變數有什麼區別?實怎麼實現的?作業系統和編譯器是怎麼知道的?16 簡述 C、C++ 程式編譯的記憶體分配情況17 簡述strcpy、sprintf與memcpy的區別18 請解析(*(void (*)( ) )0)( )的含義19 C語言的指標和引用和c++的有什麼區別?20 typedef和define有什麼區別21 指標常量與常量指標區別22 簡述佇列和棧的異同23 設定地址為0x67a9的整型變數的值為0xaa6624 編碼實現字串轉化為數字25 C 語言的結構體和 C++ 的有什麼區別26 簡述指標常量與常量指標的區別27 如何避免“野指標”28 控制代碼和指標的區別和聯絡是什麼?29 new/delete與malloc/free的區別是什麼30 說一說extern“C”31 請你來說一下 C++ 中struct和class的區別32 C++ 類內可以定義引用資料成員嗎?33 C++ 中類成員的訪問許可權34 什麼是右值引用,跟左值又有什麼區別?35 面向物件的三大特徵36 說一說 c++ 中四種cast轉換37 C++ 的空類有哪些成員函式38 對 c++ 中的smart pointer四個智慧指標:shared_ptr,unique_ptr,weak_ptr,auto_ptr的理解39 說說強制型別轉換運算子40 談談你對複製建構函式和賦值運算子的認識41 在 C++ 中,使用 malloc申請的記憶體能否透過delete釋放?使用new申請的記憶體能否用free?42 用 C++ 設計一個不能被繼承的類43 C++ 自己實現一個String類44 訪問基類的私有虛擬函式45 對虛擬函式和多型的理解46 簡述類成員函式的重寫、過載和隱藏的區別47 連結串列和陣列有什麼區別48 用兩個棧實現一個佇列的功能49 vector的底層原理50 vector中的reserve和resize的區別51 vector中的size和capacity的區別52 vector中erase方法與algorithn中的remove`方法區別53 vector迭代器失效的情況54 正確釋放vector的記憶體(clear(), swap(), shrink_to_fit())55 list的底層原理56 什麼情況下用vector,什麼情況下用list,什麼情況下用 deque57 priority_queue的底層原理58 map 、set、multiset、multimap的底層原理59 為何map和set的插入刪除效率比其他序列容器高60 為何map和set每次Insert之後,以前儲存的iterator不會失效?61 當資料元素增多時(從 10000 到 20000),map的set的查詢速度會怎樣變化?62 map 、set、multiset、multimap的特點63 為何map和set的插入刪除效率比其他序列容器高,而且每次insert 之後,以前儲存的iter64 為何map和set不能像vector一樣有個reserve函式來預分配資料?65 set的底層實現實現為什麼不用雜湊表而使用紅黑樹?66 hash_map與map的區別?什麼時候用hash_map,什麼時候用map?67 迭代器失效的問題68 STL執行緒不安全的情況這68道常見 C++/C 面試題和詳細答案已經整理成PDF文件了,隨便截幾張圖看看吧:
需要完整PDF文件的同學,我共享了你可以直接下載,
最新評論