愿你 发表于 2018-3-14 09:34:17

'\0‘也算有效字符长度吗

为什么以下程序第二个打印的是7,而不是6;'\0‘也算有效字符长度???
#include <stdio.h>
#include <string.h>

int main()
{
      char str[] = "I love FishC.com!";

      str = '\0';

      printf("sizeof str = %d\n", sizeof(str));
      printf("strlen str = %d\n", strlen(str));

      return 0;
}

BngThea 发表于 2018-3-14 09:39:15

因为strlen返回的是长度是包括结尾标识 '\0'

smallhu 发表于 2018-3-14 10:02:32

str='\0',说明0~6号为字符串内容,长度为7,没毛病啊{:10_277:}

愿你 发表于 2018-3-14 10:53:44

smallhu 发表于 2018-3-14 10:02
str='\0',说明0~6号为字符串内容,长度为7,没毛病啊

是我粗心了...{:5_104:}

愿你 发表于 2018-3-14 10:54:56

BngThea 发表于 2018-3-14 09:39
因为strlen返回的是长度是包括结尾标识 '\0'

strlen返回的不是有效长度吗
页: [1]
查看完整版本: '\0‘也算有效字符长度吗