小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

常見筆試/面試題目(四)

 軟件團(tuán)隊(duì)頭目 2006-10-28
常見筆試/面試題目(四)
□daibaobao 發(fā)表于 2005-12-9 15:55:00

4.寫出BOOL,int,float,指針類型的變量a 與零的比較語句。

答案: BOOL : if ( !a )

int : if ( a == 0)

float : const EXPRESSION EXP = 0.000001

if ( a < EXP && a >-EXP)

pointer : if ( a != NULL)

 

5.請說出const #define 相比優(yōu)點(diǎn)

答案:

1 const 常量有數(shù)據(jù)類型,而宏常量沒有數(shù)據(jù)類型。編譯器可以對前者進(jìn)行類型安全檢查。而對后者只進(jìn)行字符替換,沒有類型安全檢查,并且在字符替換可能會(huì)產(chǎn)生意料不到的錯(cuò)誤。

2 有些集成化的調(diào)試工具可以對const 常量進(jìn)行調(diào)試,但是不能對宏常量進(jìn)行調(diào)試。

 

6.簡述數(shù)組與指針的區(qū)別

數(shù)組要么在靜態(tài)存儲(chǔ)區(qū)被創(chuàng)建(如全局?jǐn)?shù)組),要么在棧上被創(chuàng)建。指針可以隨時(shí)指向任意類型的內(nèi)存塊。

(1)修改內(nèi)容上的差別

char a[] = “hello”;

a[0] = ‘X’;

char *p = “world”; // 注意p 指向常量字符串

p[0] = ‘X’; // 編譯器不能發(fā)現(xiàn)該錯(cuò)誤,運(yùn)行時(shí)錯(cuò)誤

(2) 用運(yùn)算符sizeof 可以計(jì)算出數(shù)組的容量(字節(jié)數(shù))。sizeof(p),p 為指針得到的是一個(gè)指針變量的字節(jié)數(shù),而不是p 所指的內(nèi)存容量。C++/C 語言沒有辦法知道指針?biāo)傅膬?nèi)存容量,除非在申請內(nèi)存時(shí)記住它。注意當(dāng)數(shù)組作為函數(shù)的參數(shù)進(jìn)行傳遞時(shí),該數(shù)組自動(dòng)退化為同類型的指針。

char a[] = "hello world";

char *p = a;

cout<< sizeof(a) << endl; // 12 字節(jié)

cout<< sizeof(p) << endl; // 4 字節(jié)

計(jì)算數(shù)組和指針的內(nèi)存容量

void Func(char a[100])

{
cout<< sizeof(a) << endl; // 4
字節(jié)而不是100 字節(jié)

}

 

7.類成員函數(shù)的重載、覆蓋和隱西藏別

答案:

成員函數(shù)被重載的特征:

1)相同的范圍(在同一個(gè)類中);

2)函數(shù)名字相同;

3)參數(shù)不同;

4virtual 關(guān)鍵字可有可無。

覆蓋是指派生類函數(shù)覆蓋基類函數(shù),特征是:

1)不同的范圍(分別位于派生類與基類);

2)函數(shù)名字相同;

3)參數(shù)相同;

4)基類函數(shù)必須有virtual 關(guān)鍵字。

隱藏是指派生類的函數(shù)屏蔽了與其同名的基類函數(shù),規(guī)則如下:

1)如果派生類的函數(shù)與基類的函數(shù)同名,但是參數(shù)不同。此時(shí),不論有無virtual關(guān)鍵字,基類的函數(shù)將被隱藏(注意別與重載混淆)。

2)如果派生類的函數(shù)與基類的函數(shù)同名,并且參數(shù)也相同,但是基類函數(shù)沒有virtual 關(guān)鍵字。此時(shí),基類的函數(shù)被隱藏(注意別與覆蓋混淆)


8
There are two int variables: a and b, don’t use “if”, “? :”, “switch” or other judgement statements, find out the biggest one of the two numbers.

答案:( ( a + b ) + abs( a – b ) ) / 2

 

9.如何打印出當(dāng)前源文件的文件名以及源文件的當(dāng)前行號?

答案:

cout << __FILE__ ;

cout<<__LINE__ ;

__FILE____LINE__是系統(tǒng)預(yù)定義宏,這種宏并不是在某個(gè)文件中定義的,而是由編譯器定義的。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多