1 什麼是字串?字串是以空字元(\
0)結尾的字元陣列。
空字元的assii碼為:0, 空格的ascii碼為32
2 \0的作用
'\0'是乙個空字元標誌,它的assii碼為0,c++有好多處理字串的函式,都以'\0'為結束標記。
也就是以空字元為結束標記,比如cin,cout。它們都以空字元為結束標記,他們在遇到空字元後將會停止輸入或輸出。
3 cin.ignore()
cin.ignore(a,ch) 從輸入流(cin)中提取字元,提取的字元被忽略(ignore),不被使用。每拋棄乙個字元,
它都要計數和比較字元:如果計數值達到a或者被拋棄的字元是ch,則cin.ignore()函式執行終止;否則,它繼續等待
預設引數為cin.ignore(1,eof),即把eof前的1個字元清掉,沒有遇到eof就清掉乙個字元
它的乙個常用功能就是用來清除以回車結束的輸入緩衝區的內容,消除上一次輸入對下一次輸入的影響.
4 cin.get(char, n) 的結束標記是 \n 換行符。因此遇到空白字元(空格,tab)不會結束。同時在輸入結束後,也就是使用者輸入第乙個回車後,cin.get自動為
當前接受的輸入的陣列新增字串結束標記 \0, 因此它實際儲存的有效字元是它的第二個引數減1.
5 cin遇到不可見字元(製表符和空格)和空字元('\0')就停止輸入。
cout則只是遇到空字元才停止輸出。0
6 char man = 是一種簡寫,隱含了字串結束標記\0 char m = ;
7 計算字串長度時,不要忘記最後的空字元'\0' strlen(char型字串)是計算可見字元的長度(不包括 ascii 0) sizeof(是計算字串的長度)(含asscii0)
#include usingnamespace
std;
intmain()
; cout
<< man
<< "
----------------
"<}
;cout
<< man <}
;cout
<< m
<< "
----------------
"<}
;cout
<< man <}
;cout
<< man
<< "
strlen(man)=
"<< strlen(man)
<< "
sizeof(man)=
"<< sizeof(man)
6] = '\0'
; cout
<< "
strlen(man)=
"<< strlen(man)
<< "
sizeof(man)=
"<< sizeof(man) <}
return0;
}/*vim: set ts=4 sw=4 sts=4 tw=100
*/
char 字串和char 字串的理解
一 char 字串 1.如何宣告乙個char 字串 你可以這樣 char str test str是乙個指標,存放在棧區,test 是乙個常量,存放在常量區,vs2017要求這句宣告前面必須加上const,因為它所指向的常量字串是不可更改的 delete str 還可以這樣 char str new...
字串陣列char 和字串指標char 的討論
相同點 1.char a 和char a在作為形參的時候完全相同。2.在初始化時,都可以使用常量字串,區別1.內容位址不同 char a abcd 此時 abcd 存放在常量區,然後在棧上分配記憶體給a,並指向 abcd 在常量區的首位址。對於指標本身a來說,它是可變的,允許修改,可以指向其他的位址...
字串char 和字串陣列char 的區別
字串char char str1 abcde 其實上面的char str1是字串常量,儲存在靜態儲存區,是唯讀的,也就是說它是const char str1 更好的表達它本身的意思。str1是乙個變數,代表的意思就是字串的第乙個字元的值 str1 可行 str1 2 f 不可行假如 char str...