已采納回答 / _雨林
我的意思是不能直接修改*p,例如:*p = 5;這是錯(cuò)的但是能通過(guò)修改x的值,來(lái)修改*p的值,例如:x = 5;這是對(duì)的
2015-09-24
已采納回答 / qq_追夢(mèng)_26
因?yàn)閤是常量,y是指針變量,肯定不能把x的地址傳給y啊,如果這樣的話會(huì)造成修改y直接后果就是修改x的值,x都被修改了還怎么能是const?
2015-09-24
已采納回答 / onemoo
這個(gè)課程似乎就是講這個(gè)的呀! 沒(méi)有講嗎?左側(cè)函數(shù):參數(shù)a和b都是指針類型。變量前加上&,代表“取地址”,得到的是指針類型,這樣傳參數(shù),a和b分別是指向x和y的指針。用指針是因?yàn)椋喝绻暶鳛槠胀ǖ膇nt參數(shù),那么在調(diào)用函數(shù)時(shí),a和b會(huì)獲得x和y的值,函數(shù)中a和b的值會(huì)互換,但不會(huì)影響到外面的x和y。 而通過(guò)指針就可以間接修改外面的x和y了右側(cè)函數(shù):a和b都聲明為引用了。那么在調(diào)用時(shí),函數(shù)中的a和b分別就是傳入的x和y的引用。引用有點(diǎn)像“別名”的意思,對(duì)引用操作就相當(dāng)于對(duì)原變量操作。
2015-09-23
已采納回答 / onemoo
你是可以通過(guò)指針來(lái)修改其所指的對(duì)象的。 所以如果允許p指向const int對(duì)象,就意味著你可以通過(guò)p來(lái)修改a,顯然這是不合理的。故語(yǔ)法要求const對(duì)象只能被“指向const對(duì)象的指針”所指。將p聲明為 const int *p; 就沒(méi)有問(wèn)題了,這個(gè)p是指向const對(duì)象的。
2015-09-14
已采納回答 / onemoo
C++的<fstream>頭文件中有 fstream ifstream ofstream 可以操作文件,具體用法請(qǐng)搜索。上樓說(shuō)的fopen fread fwrite是C風(fēng)格的IO庫(kù)函數(shù),包含在C++的<cstdio>頭文件中。
2015-07-17
已采納回答 / onemoo
const int const *p 這樣聲明是錯(cuò)的,這兩個(gè)const都是修飾int的,所以重復(fù)了。應(yīng)該寫成 const int *p 或 int const *p,這兩種寫法是一樣的,都是將p聲明為指向const int的指針。我猜你想比較的是 const int * const p。這樣是將p聲明為指向const int的const指針,就是說(shuō)p本身也是const的。
2015-07-15