- 相關(guān)推薦
筆試題(數(shù)組與指針)
1.請說出const與#define 相比,有何優(yōu)點(diǎn)?
答案:1) const 常量有數(shù)據(jù)類型,而宏常量沒有數(shù)據(jù)類型,
筆試題(數(shù)組與指針)
。編譯器可以對前者進(jìn)行類型安全檢查。而對后者只進(jìn)行字符替換,沒有類型安全檢查,并且在字符替換可能會產(chǎn)生意料不到的錯誤。2) 有些集成化的調(diào)試工具可以對const 常量進(jìn)行調(diào)試,但是不能對宏常量進(jìn)行調(diào)試。
2.簡述數(shù)組與指針的區(qū)別?
數(shù)組要么在靜態(tài)存儲區(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)該錯誤,運(yùn)行時(shí)錯誤
(2) 用運(yùn)算符sizeof 可以計(jì)算出數(shù)組的容量(字節(jié)數(shù)),
資料共享平臺
《筆試題(數(shù)組與指針)》(http://m.dameics.com)。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ù)組自動退化為同類型的指針。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é)
}
【筆試題數(shù)組與指針】相關(guān)文章:
在C語言中什么是指針和數(shù)組等價(jià)09-28
C++筆試題:關(guān)于鏈表和指針09-16
360筆試題目06-27
筆美國國家儀器試題目09-23
搜狐產(chǎn)品筆歸分享筆試題目07-05
什么是數(shù)組名07-15
PHP中如何創(chuàng)建和修改數(shù)組08-11
如果NULL和0作為空指針常數(shù)是等價(jià)的,如何選擇10-19
新浪筆經(jīng)04-27