在線網校:>>>點擊進入<<<
考試書庫:>>>點擊進入<<<
網校以及考試書庫開發及擁有課件范圍涉及公務員/財會類/學歷類/建筑工程類
等9大類考試的在線網絡培訓輔導和全新引進高清3D電子書考試用書。
1. static有什么用途?(請至少說明兩種)
答:1)在函數體,一個被聲明為靜態的變量在這一函數被調用過程中維持其值不變。
2) 在模塊內(但在函數體外),一個被聲明為靜態的變量可以被模塊內所用函數訪問,但不能被模塊外其它函數訪問。它是一個本地的全局變量。
3) 在模塊內,一個被聲明為靜態的函數只可被這一模塊內的其它函數調用。那就是,這個函數被限制在聲明它的模塊的本地范圍內使用
2. 引用與指針有什么區別?
答:1) 引用必須被初始化,指針不必。
2) 引用初始化以后不能被改變,指針可以改變所指的對象。 3) 不存在指向空值的引用,但是存在指向空值的指針。
3. 描述實時系統的基本特性
答:在特定時間內完成特定的任務,實時性與可靠性。
4. 全局變量和局部變量在內存中是否有區別?如果有,是什么區別?
答:全局變量儲存在靜態數據庫,局部變量在堆棧。
5. 什么是平衡二叉樹?
答:左右子樹都是平衡二叉樹 且左右子樹的深度差值的絕對值不大于1。
6. 堆棧溢出一般是由什么原因導致的? 沒有回收垃圾資源。
7. 什么函數不能聲明為虛函數?
答:constructor函數不能聲明為虛函數。
8. 冒泡排序算法的時間復雜度是什么?
答:時間復雜度是O(n^2)。
9. 寫出float x 與零值比較的if語句。
答: if(x>0.000001&&x<-0.000001)
10. Internet采用哪種網絡協議?該協議的主要層次結構?
答: Tcp/Ip協議
主要層次結構為: 應用層/傳輸層/網絡層/數據鏈路層/物理層。
1. Internet物理地址和IP地址轉換采用什么協議?
答:ARP (Address Resolution Protocol)(地址解析協議 )
2. IP地址的編碼分為哪倆部分?
答:IP地址由兩部分組成,網絡號和主機號。不過是要和子網掩碼按位與上之后才能區分哪些是網絡位哪些是主機位。
3. 不能做switch()的參數類型是: switch的參數不能為實型。
4. 程序什么時候應該使用線程,什么時候單線程效率高 ?
答:(1) 耗時的操作使用線程,提高應用程序響應
(2) 并行操作時使用線程,如C/S架構的服務器端并發線程響應用戶的請求。
(3) 多CPU系統中,使用線程提高CPU利用率
(4) 改善程序結構。一個既長又復雜的進程可以考慮分為多個線程,成為幾個獨立或半獨 立的運行部分,這樣的程序會利于理解和修改。 其他情況都使用單線程。
5. C++中什么數據分配在?;蚨阎校琋ew分配數據是在近堆還是遠堆中?
答:棧: 存放局部變量,函數調用參數,函數返回值,函數返回地址。由系統管理堆: 程序運行時動態申請,new 和malloc申請的內存就在堆上
6. 關于內存對齊的問題以及sizof()的輸出
答:編譯器自動對齊的原因:為了提高程序的性能,數據結構(尤其是棧)應該盡可能地在自然邊界上對齊。原因在于,為了訪問未對齊的內存,處理器需要作兩次內存訪問;然而,對齊的內存訪問僅需要一次訪問。
7. int i=10, j=10, k=3; k*=i+j; k最后的值是?
答:60,此題考察優先級,實際寫成: k*=(i+j);,賦值運算符優先級最低
8. 動態連接庫的兩種方式?
答:調用一個DLL中的函數有兩種方法:
①載入時動態鏈接(load-time dynamic linking),模塊非常明確調用某個導出函數,使得他們就像本地函數一樣。這需要鏈接時鏈接那些函數所在DLL的導入庫,導入庫向系統提供了載入DLL時所需的信息及DLL函數定位
②運行時動態鏈接(run-time dynamic linking),運行時可以通過LoadLibrary或LoadLibraryEx函數載入DLL。DLL載入后,模塊可以通過調用GetProcAddress獲取DLL函數的出口地址,然后就可以通過返回的函數指針調用DLL函數了。如此即可避免導入庫文件了
9. 函數模板與類模板有什么區別?
答:函數模板的實例化是由編譯程序在處理函數調用時自動完成的,而類模板的實例化必須由程序員在程序中顯式地指定。
1. 使用線程是如何防止出現大的波峰。
答:意思是如何防止同時產生大量的線程,方法是使用線程池,線程池具有可以同時提高調度效率和限制資源使用的好處,線程池中的線程達到最大數時,其他線程就會排隊等候。
2. 寫出判斷ABCD四個表達式是否正確, 若正確, 寫出經過表達式中a的值 int a = 4;
(A) a += (a++); (B) a += (++a); (C) (a++) += a; (D) (++a) += (a++); a = ?
答:C錯誤,左側不是一個有效變量,不能賦值,可改為(++a) += a; 改后答案依次為9,10,10,11
3. MFC中CString是類型安全類么?
答:不是,其它數據類型轉換到CString可以使用CString的成員函數Format來轉換
4. C++中為什么用模板類。
答:
(1) 可用來創建動態增長和減小的數據結構 (2) 它是類型無關的,因此具有很高的可復用性。
(3) 它在編譯時而不是運行時檢查數據類型,保證了類型安全 (4) 它是平臺無關的,可移植性
(5) 可用于基本數據類型
5 CSingleLock是干什么的?
答:同步多個線程對一個數據類的同時訪問
6. 局部變量能否和全局變量重名?
答:能,局部會屏蔽全局。要用全局變量,需要使用"::"
局部變量可以與全局變量同名,在函數內引用這個變量時,會用到同名的局部變量,而不會用到全局變量。對于有些編譯器而言,在同一個函數內可以定義多個同名的局部變量,比如在兩個循環體內都定義一個同名的局部變量,而那個局部變量的作用域就在那個循環體內。
更多信息請查看事業編‖公務員‖考試資料‖考試技巧