溫馨提示×

C語言sizeof字符串能精確計算長度嗎

小樊
128
2024-09-29 15:08:04
欄目: 編程語言

在C語言中,sizeof運算符用于獲取數據類型或對象的大?。ㄒ宰止潪閱挝唬?。對于字符串,sizeof運算符返回的是字符串中第一個空字符(null terminator,‘\0’)之前的所有字符所占的字節數。

因此,sizeof不能精確計算字符串的長度,因為它不包括空字符。如果需要計算字符串的實際長度(包括空字符),需要使用其他方法,如strlen函數。

示例:

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Hello, World!";
    printf("Size of string: %zu bytes\n", sizeof(str));  // 輸出字符串的總字節數,包括空字符
    printf("Length of string: %zu characters\n", strlen(str));  // 輸出字符串的實際長度,不包括空字符
    return 0;
}

在這個例子中,sizeof(str)返回的是str數組的總字節數,而strlen(str)返回的是字符串的實際長度。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女