在 C 語言中,字符串是以 null 終止字符(\0)作為結束符的,如果缺少終止字符,會導致字符串操作函數無法正確處理字符串。解決方法可以有以下幾種:
char str[10] = "Hello"; // 缺少終止字符
str[5] = '\0'; // 手動添加終止字符
char str[] = "Hello"; // 使用字符串初始化,編譯器會自動添加終止字符
#include <string.h>
#include <stdlib.h>
char str[10] = "Hello"; // 缺少終止字符
// 使用 strncpy 函數將缺少終止字符的部分復制到另一個字符串中
char newStr[10];
strncpy(newStr, str, sizeof(newStr)-1); // 復制時限制大小,避免越界
newStr[sizeof(newStr)-1] = '\0'; // 手動添加終止字符
無論使用哪種方法,都需要確保字符串的長度不超過數組的長度,以避免緩沖區溢出。