NULL 是什麼 && 爲什麼要使用 strlen(s) + 1

NULL 是什麼?

NULL 是一個指向內存地址 0 的特殊常量。按照慣例,它通常被用來表示空值或無數據。在上面的代碼中,我們使用 NULL 來表示雖然我們有一個數據指針,但它目前還沒有指向任何內容。在本書的後續章節中你講經常性地遇到這個特殊的常量,所以,請眼熟它。


爲什麼要使用 strlen(s) + 1

在 C 語言中,字符串是以空字符做爲終止標記的。所以,C 語言字符串的最後一個字符一定是 \0。請確保所有的字符串都是按照這個約定來存儲的,不然程序就會因爲莫名其妙的錯誤退出。strlen 函數返回的是字符串的實際長度(所以不包括結尾的 \0 終止符)。所以爲了保證有足夠的空間存儲所有字符,我們需要在額外 +1。

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