国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
數(shù)組名和指針的區(qū)別
許多程序員對數(shù)組名和指針的區(qū)別不甚明了,他們認為數(shù)組名就是指針,而實際上數(shù)組名和指針有很大區(qū)別,在使用時要進行正確區(qū)分,其區(qū)分規(guī)則如下:
規(guī)則1 數(shù)組名指代一種數(shù)據(jù)結構,這種數(shù)據(jù)結構就是數(shù)組;
char str[10];
char *pStr = str;
cout << sizeof(str) << endl;
cout << sizeof(pStr) << endl;

輸出結果為:
10
    4
這說明數(shù)組名str指代數(shù)據(jù)結構char[10]。
規(guī)則2 數(shù)組名可以轉換為指向其指代實體的指針,而且是一個指針常量,不能作自增、自減等操作,不能被修改;
char str[10];
char *pStr = str;
str++; //編譯出錯,提示str不是左值 
pStr++; //編譯正確

規(guī)則3 指向數(shù)組的指針則是另外一種變量類型(在WIN32平臺下,長度為4),僅僅意味著數(shù)組的存放地址;

規(guī)則4 數(shù)組名作為函數(shù)形參時,在函數(shù)體內(nèi),其失去了本身的內(nèi)涵,僅僅只是一個指針;很遺憾,在失去其內(nèi)涵的同時,它還失去了其常量特性,可以作自增、自減等操作,可以被修改。
例如:
void arrayTest(char str[])
{
cout << sizeof(str) << endl;   //輸出指針長度
str++; //編譯正確
}
int main(int argc, char* argv[])
{
char str1[10] = "I Love U";
arrayTest(str1);
return 0;
}
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
數(shù)組傳參的問題
C 內(nèi)存管理詳解
c++知識 - 洋男的日志 - 網(wǎng)易博客
C++經(jīng)典面試題
C 筆試題(一)
談C/C++指針精髓
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服