語言char?
C++ 中定義char 數(shù)組char ca1[] = "name";
此時沒有指定數(shù)組長度,則實際ca1的內(nèi)存占用為5個字符 name + /0字符
char ca2[4] = "name";
這種定義方式會報錯,實際長度超出指定長度,賦值失敗,編譯器會報錯,原因為尾部需要加/0
此格式為C風(fēng)格字符串 C語言在字符串尾部加0作為字符串結(jié)束符
char ca3[6] = "name";
多出來的長度全部 為0
動態(tài)創(chuàng)建char數(shù)組
當(dāng)數(shù)組長度為 變量時 需要使用動態(tài)創(chuàng)建的方式
char *s1 = new char[x + 1];
同樣需要把長度+1 使結(jié)束符0 有位置可儲存
延申
C++ 字符串模板 string 中不以0為結(jié)束符