爲什麼char*申請空間時要多申請一位

在c++中,字符串的存儲有兩種形式,一種是c風格的字符數組的存儲方式,而另一種則是string類的形式,但實質上string的底層仍然是字符數組。
而對於字符數組,一般最後一位爲‘\0’,標誌着字符串的結束,只有含有‘\0’結尾的字符串纔是有意義的字符串。
基於此,每次對char*的空間申請,都應該多申請一位給‘\0’的結尾標誌符,當然,在對字符串進行長度計算時,系統將自動忽略’\0’

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章