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