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