C++ 不支援字串變數,字串以 char 陣列表示:
char text[] = "This is a string.";
配置 18 位元組(字串 17 字元 + 終止符)。
特殊字元 \0(數值 0)。程式遇到 \0 視為字串結尾。
#include
#include
#pragma hdrstop
int main(int argc, char** argv) {
char str[] = "This is a string.";
cout << str << endl;
str[7] = '\0'; // 第 7 個元素設為終止符
cout << str << endl; // 僅顯示 "This is"
getch();
return 0;
}
// 之前
T h i s i s a s t r i n g . \0
// 之後 (str[7] = '\0')
T h i s i s \0 a s t r i n g . \0
電腦認為字串在第 7 個元素結尾,剩餘字元仍在記憶體但不顯示。
\0 與 0 等價
str[7] = '\0';
str[7] = 0; // 結果相同