freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

cc程序員應(yīng)聘常見面試題(編輯修改稿)

2025-04-20 04:46 本頁面
 

【文章內(nèi)容簡介】 ?。?)數(shù)組名指代一種數(shù)據(jù)結(jié)構(gòu),這種數(shù)據(jù)結(jié)構(gòu)就是數(shù)組;  例如:char str[10]。cout sizeof(str) endl。  輸出結(jié)果為10,str指代數(shù)據(jù)結(jié)構(gòu)char[10]?! 。?)數(shù)組名可以轉(zhuǎn)換為指向其指代實體的指針,而且是一個指針常量,不能作自增、自減等操作,不能被修改;char str[10]。 str++。 //編譯出錯,提示str不是左值  ?。?)數(shù)組名作為函數(shù)形參時,淪為普通指針?! indows NT 32位平臺下,指針的長度(占用內(nèi)存的大小)為4字節(jié),故sizeof( str ) 、sizeof ( p ) 都為4。  試題3:寫一個“標(biāo)準(zhǔn)”宏MIN,這個宏輸入兩個參數(shù)并返回較小的一個。另外,當(dāng)你寫下面的代碼時會發(fā)生什么事?least = MIN(*p++, b)?! 〗獯穑篸efine MIN(A,B) ((A) = (B) ? (A) : (B))  MIN(*p++, b)會產(chǎn)生宏的副作用  剖析:  這個面試題主要考查面試者對宏定義的使用,宏定義可以實現(xiàn)類似于函數(shù)的功能,但是它終歸不是函數(shù),而宏定義中括弧中的“參數(shù)”也不是真的參數(shù),在宏展開的時候?qū)Α皡?shù)”進行的是一對一的替換?! 〕绦騿T對宏定義的使用要非常小心,特別要注意兩個問題: ?。?)謹(jǐn)慎地將宏定義中的“參數(shù)”和整個宏用用括弧括起來。所以,嚴(yán)格地講,下述解答:define MIN(A,B) (A) = (B) ? (A) : (B)define MIN(A,B) (A = B ? A : B )  都應(yīng)判0分;  (2)防止宏的副作用?! 『甓xdefine MIN(A,B) ((A) = (B) ? (A) : (B))對MIN(*p++, b)的作用結(jié)果是:((*p++) = (b) ? (*p++) : (*p++))  這個表達式會產(chǎn)生副作用,指針p會作三次++自增操作?! 〕酥猓硪粋€應(yīng)該判0分的解答是:define MIN(A,B) ((A) = (B) ? (A) : (B))。   這個解答在宏定義的后面加“。”,顯示編寫者對宏的概念模糊不清,只能被無情地判0分并被面試官淘汰?! ≡囶}4:為什么標(biāo)準(zhǔn)頭文件都有類似以下的結(jié)構(gòu)? ifndef __INCvxWorkshdefine __INCvxWorksh ifdef __cplusplusextern C {endif /*...*/ ifdef __cplusplus}endif endif /* __INCvxWorksh */  解答:  頭文件中的編譯宏ifndef __INCvxWorkshdefine __INCvxWorkshendif   的作用是防止被重復(fù)引用。  作為一種面向?qū)ο蟮恼Z言,C++支持函數(shù)重載,而過程式語言C則不支持。函數(shù)被C++編譯后在symbol庫中的名字與C語言的不同。例如,假設(shè)某個函數(shù)的原型為: void foo(int x, int y)?! ≡摵瘮?shù)被C編譯器編譯后在symbol庫中的名字為_foo,而C++編譯器則會產(chǎn)生像_foo_int_int之類的名字。_foo_int_int這樣的名字包含了函數(shù)名和函數(shù)參數(shù)數(shù)量及類型信息,C++就是考這種機制來實現(xiàn)函數(shù)重載的。  為了實現(xiàn)C和C++的混合編程,C++提供了C連接交換指定符號extern C來解決名字匹配問題,函數(shù)聲明前加上extern C后,則編譯器就會按照C語言的方式將該函數(shù)編譯為_foo,這樣C語言中就可以調(diào)用C++的函數(shù)了?! ≡囶}5:編寫一個函數(shù),作用是把一個char組成的字符串循環(huán)右移n個。比如原來是“abcdefghi”如果n=2,移位后應(yīng)該是“hiabcdefgh”   函數(shù)頭是這樣的://pStr是指向以39。\039。結(jié)尾的字符串的指針//steps是要求移動的nvoid LoopMove ( char * pStr, int steps ){ //請?zhí)畛?..}  解答:  正確解答1:void LoopMove ( char *pStr, int steps ){ int n = strlen( pStr ) steps?!har tmp[MAX_LEN]。  strcpy ( tmp, pStr + n )。  strcpy ( tmp + steps, pStr)。  *( tmp + strlen ( pStr ) ) = 39。\039?!trcpy( pStr, tmp )。}  正確解答2:void LoopMove ( char *pStr, int steps ){ int n = strlen( pStr ) steps。 char tmp[MAX_LEN]。  memcpy( tmp, pStr + n, steps )。  memcpy(pStr + steps, pStr, n )。  memcpy(pStr, tmp, steps )。 }  剖析:  這個試題主要考查面試者對標(biāo)準(zhǔn)庫函數(shù)的熟練程度,在需要的時候引用庫函數(shù)可以很大程度上簡化程序編寫的工作量。  最頻繁被使用的庫函數(shù)包括: ?。?) strcpy ?。?) memcpy ?。?) memset  試題6:已知WAV文件格式
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1