筆試、面試重點總結:WIN32、MFC與Linux(持續更新中...)

win32

1. Win32應用程序的基本類型.

2. 創建win32窗口程序的幾個步驟,及使用到的函數。

3. nmake 與 makefile。

4. 有哪些字符集? Win32對於各種字符集如何進行兼容及轉換? (wchar_t、TCHAR、TEXT() )。

5. 怎麼創建一個子窗口?在哪進行設置?

6. 窗口類的分類,如何創建一個應用程序全局窗口類。

7. Win32窗口程序運行機制與控制檯程序的運行機制有何區別?

8. Getmessage函數的作用,與Peekmessage函數的區別。

9. 發送WM_QUIT消息使程序終止的內部過程。

11. TranslateMessage及 DispatchMessage的作用。

12. SendMessage與PostMessage的區別。

13. Win32消息機制獲取消息的過程(先查看什麼消息?再查看什麼消息?)

14. 知道有哪幾類主要的消息。(WM_CREATE,WM_DESTROY, WM_SIZE, WM_SYSCOMMAND, WM_COMMAND,  WM_PAINT, 鼠標消息,鍵盤消息)。

15. 定時器如何使用。

16. 用戶自定義消息如何定義。

17. 創建菜單、設置菜單的函數,在哪處理菜單命令的消息。

18. 加速鍵如何使用?

19. GDI繪圖對象,使用的步驟,及函數。

20. 使用位圖的步驟及用到的主要函數。

21. 可用於文字繪製的API函數。

22. 有模式對話框與無模式對話框的區別,創建步驟。收到的創建消息是什麼?

23. 子控件和父窗口通過什麼進行通信?父窗口在哪裏處理子窗口發送的消息?

24. 有哪些常見的子控件?(靜態框、編輯框、按鈕、listbox、comboBox、滾動條)

25. 什麼樣的控件支持自繪製?

26. 動態庫與靜態庫的區別。

27. Win32裏面怎樣用靜態庫? C++程序在引用c的靜態庫時,需要注意什麼?

28. Win32裏面動態庫有哪幾種導出方式,有哪幾種導入方式?(注意c++的導出方式)

29. Win32裏面文件打開和關閉的API。

30. Windows地址空間的劃分。

31. Windows 內存使用的幾種方式及相應的函數(虛擬內存、堆內存、棧內存)。

32. Malloc內部調用A函數,A函數調用B函數。A和B分別是什麼?

33. 內存映射文件的作用。主要函數。

34. 創建進程和打開進程用什麼函數?有什麼區別?

35. 創建線程用什麼函數?

36. Waitforsingleobject與Waitformultiobjects的區別。Waitforsingleobject的第二個參數爲0表示什麼意思?

37. 關閉線程和關閉進程的函數分別是什麼?

38. 線程局部存儲(TLS)的意義,如何指定一個變量的TLS屬性。

39. Win32線程同步提供的方式,及主要函數爲什麼?

40. 提供的同步措施中哪些是內核對象?試比較互斥量和臨界區。

 

MFC

1. MFC包含哪幾類程序? 其中MFC應用程序又包含哪幾類?

2. MFC的中的大多數類都繼承自哪個類?

3. MFC主要要用到哪幾個類?及其各個類的作用。

4. MFC中有哪6類核心機制?Cobject中封裝了哪些機制?

5. 在哪個類的什麼函數中進行MFC程序初始化? 相當於main功能的函數。

6. MFC應用程序的啓動機制的實現。(幾個步驟及相關函數)

7. 窗口的創建及窗口處理函數機制的實現。(幾個步驟及相關用到函數)

8. 消息映射機制的原理及實現。宏。(查找消息處理函數的幾個步驟及其函數)

9. MFC的消息分類。自注冊消息用什麼函數進行註冊?消息映射宏是什麼?

10. MFC菜單、工具欄、狀態欄所用的類是什麼?

11. 怎麼定義一個視圖窗口?

12. 劃分窗口使用什麼類?劃分窗口有哪兩類,有什麼區別?

13. 運行時類信息機制的宏,及原理。CRuntimeClass的內容,isKindOf實現方法。

14. 動態創建機制的宏,及實現。與運行時類信息在內容添加上的區別?

15. 消息的派發會經過哪幾個類?一般在哪個類裏進行處理?SetActiveView的作用。

16. 單文檔、多文檔模板類是什麼?保存模板類用什麼函數?新建模板用什麼函數?

17. 單文檔視圖的創建過程及所用到的相關函數。

18. MFC繪圖有哪幾類DC?各自的類名,及區別。

19. MFC有哪幾類繪圖對象?各自的類名。

20. MFC有哪幾類數據集合類?CMAP的底層實現?

21. MFC的文件類是什麼?文件查找類是什麼?

22. 序列化機制的宏,怎麼使用?執行>>和<<時進行的內部操作及其相應函數。

23. MFC的對話框的種類,各自怎麼使用?及相關函數。

24. 定義對話框數據交換的步驟,及使用方法,實現原理。

25. 通用對話框有哪些,試舉例。

26. MFC常用的通用控件有哪些?舉出類名。

27. MFC的動態庫有哪幾種類型?擴展庫一般用來做什麼?

28. MFC的線程有哪幾類? 相互有什麼區別?各自的創建方法是什麼?

29. VC環境下可以使用哪幾類socket? 其中MFC的socket類 有哪幾種,各自區別?類名是什麼?用什麼函數初始化MFC的socket庫。

 

Linux基本命令

1. 絕對路徑用什麼符號表示?當前目錄、上層目錄用什麼表示?主目錄用什麼表示? 切換目錄用什麼命令?

2. 怎麼查看當前進程?怎麼執行退出?怎麼查看當前路徑?

3. 怎麼清屏?怎麼退出當前命令?怎麼執行睡眠?怎麼查看當前用戶id?查看指定幫助用什麼命令?

4. Ls 命令執行什麼功能? 可以帶哪些參數,有什麼區別?

5. 建立軟鏈接(快捷方式),以及硬鏈接的命令。

6. 目錄創建用什麼命令?創建文件用什麼命令?複製文件用什麼命令?

7. 文件權限修改用什麼命令?格式是怎麼樣的?

8. 查看文件內容有哪些命令可以使用?

9. 隨意寫文件命令?怎麼向屏幕輸出帶空格的字符串,比如”hello  world”?

10. 終端是哪個文件夾下的哪個文件?黑洞文件是哪個文件夾下的哪個命令?

11. 移動文件用哪個命令?改名用哪個命令?

12. 複製文件用哪個命令?如果需要連同文件夾一塊複製呢?如何需要有提示功能呢?

13. 刪除文件用哪個命令?如果需要連目錄及目錄下文件一塊刪除呢?刪除空文件夾用什麼命令?

14. Linux下命令有哪幾種可使用的通配符?分別代表什麼含義?

15. 用什麼命令對一個文件的內容進行統計?(行號、單詞數、字節數)

16. Grep命令有什麼用? 如何忽略大小寫? 如何查找不含該串的行?

17. Linux中進程有哪幾種狀態?在ps顯示出來的信息中,分別用什麼符號表示的?

18. 怎麼使一個命令在後臺運行?

19. 利用ps怎麼顯示所有的進程? 怎麼利用ps查看指定進程的信息?

20. 哪個命令專門用來查看後臺任務?

21. 把後臺任務調到前臺執行使用什麼命令?把停下的後臺任務在後臺執行起來用什麼命令?

22. 終止進程用什麼命令? 帶什麼參數?

23. 怎麼查看系統支持的所有信號?

24. 搜索文件用什麼命令? 格式是怎麼樣的?

25. 查看當前誰在使用該主機用什麼命令? 查找自己所在的終端信息用什麼命令?

26. 使用什麼命令查看用過的命令列表?

27. 使用什麼命令查看磁盤使用空間? 空閒空間呢?

28. 使用什麼命令查看網絡是否連通?

29. 使用什麼命令查看ip地址及接口信息?

30. 查看各類環境變量用什麼命令?

31. 通過什麼命令指定命令提示符?

32. 查找命令的可執行文件是去哪查找的? 怎麼對其進行設置及添加?

33. 通過什麼命令查找執行命令?

34. 怎麼對命令進行取別名?

 

Linux編程

1. 列舉Linux內存管理相關的幾個函數,各自有什麼功能?

2. GCC只編譯的選項是什麼?只進行預處理的選項是什麼?在命令行定義宏的選項是什麼?

3. Linux靜態庫的使用,怎麼創建一個靜態庫? 怎麼使用一個靜態庫?靜態庫文件的後綴名是什麼?靜態庫的命名規範。

4. nm 工具的作用,ldd工具的作用。

5. Linux動態庫的使用,怎麼創建一個動態庫? 動態庫文件的後綴名是什麼?怎麼使用一個動態庫?動態庫的命名規範?系統默認的動態庫的查找路徑?動態庫顯示連接所使用的系統庫是什麼?

6. Linux下make 與makefile。用什麼參數指定makefile文件? 什麼是默認的makefile文件。

7. 在哪個文件夾下存有進程運行時的所有信息?

8. 每個程序默認打開哪三個文件設備?

9. 操作文件描述符的讀寫函數是什麼?打開文件描述符以及關閉文件描述符的函數?

10. Fcntl函數主要的幾個作用。

11. 創建進程的幾個函數,及各自區別。

12. 父進程先結束,子進程會變爲?子進程先結束,子進程會變爲?

13. 怎麼使父進程回收子進程?相關的幾個函數。

14. 子進程在創建時與父進程的內存資源的複製問題。

15. 中斷信號、終止信號、定時器信號的宏是什麼?

16. 在程序中註冊信號和發送信號用什麼函數?

17. 信號的可靠與不可靠的含義。哪些信號是可靠的?哪些信號是不可靠的?

18. 信號屏蔽用什麼函數? SigSuspend的作用? Sigpending的作用?

19. 信號處理函數處理信號時是否會被信號中斷?

20. 最新版本的信號發送與處理函數?與老版本的發送與數據函數有什麼區別?

21. Linux下進程有哪些通信方式(IPC)?

22. TCP服務器編程模型。

23. UDP服務器編程模型。

24. TCP編程特徵,由於每次不定長數據到達,則一般使用什麼選項?

25. Selected模型是什麼?相比而言多進程實現方式有什麼區別?Selected、epoll模型、poll模型的區別。

26. 常用的socket選項有哪些?利用哪個函數來設置socket選項?

27. 怎麼發送和設置帶外(OOB)數據?

28. Linux 下多線程的庫是什麼? 利用哪個函數創建線程?利用哪個函數強制結束線程?主線程等待子線程結束時使用的函數?

29. 線程怎樣在被迫退出時能做一些善後處理?以及怎麼用linux特有的方式處理?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章