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

 

  

posted @ 2021-04-14 09:36  人生充满不确定性  阅读(334)  评论(0)    收藏  举报