(一)
string a="Hello, World!";
cout<<sizeof(a)<<endl;
輸出結果是4
(二)
cout<<sizeof("Hello, World!")<<endl;
輸出結果是14
請問:為什么會不一樣?
uj5u.com熱心網友回復:
第一個是a這個物件的大小,第二個是字串的長度uj5u.com熱心網友回復:
因為a是一個string類的實體,對他進行sizeof是對整個string類進行sizeof,而不僅僅是字串。下面那個就直接對字串進行sizeof所以可以通過sizeof得到字串的長度
uj5u.com熱心網友回復:
因為Hello, World!【13】 + ‘\0’【1】 = 14uj5u.com熱心網友回復:
第一個是求變數型別的大小,第二個是求字串長度。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/44272.html
標籤:新手樂園
下一篇:strcmp函式運行例外
