sizeof和strlen求字符串长度
犯了一个常识性错误,以前一直以为字符串常量(如 “aaaaa” )是不可以用sizeof(x)直接计算长度,必须使用strlen计算长度。
原来字符常量数组可以用sizeof(x)直接计算长度。
示例如下:
1 #include <stdio.h> 2 #include <string.h> 3 #define TEST_STR "aaaaaa" 4 5 int main() 6 { 7 printf("sizeof(TEST_STR) :%lu\n", sizeof(TEST_STR)); 8 printf("strlen(TEST_STR) :%lu\n", strlen(TEST_STR)); 9 return 0; 10 }
最终计算结果如下:
1 sizeof(TEST_STR) :7 2 strlen(TEST_STR) :6

浙公网安备 33010602011771号