C 字符串中sizeof() 和 strlen()

C 字符串中sizeof() 和 strlen()

首先必须要声明的一点是sizeof()是单目操作符,strlen()是string.h库文件中的一个函数。

当它们同时计算字符串时,是有一些细小的差别。下面的测试程序很清楚的说明这样的差别。

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

int main(void)
{
    printf("sizeof = %d\n", sizeof("1111"));
    printf("string = %d\n", strlen("1111"));
    return 0;
}

运行的​的结果:sizeof = 5 string = 4。
说明sizeof在计算字符串长度时是包含’\0’。strlen在计算字符串长度时是不包含’\0’!

你可能感兴趣的:(字符串,C语言)