一直在学习 发表于 2021-3-22 19:17:40

字符串长度

strlen("\012")的长度为1,即8进制ASCII码,是换行符'\n'
为什么长度不能是3?一个空字符'\0',一个‘1’,一个'2'

wp231957 发表于 2021-3-22 20:41:49

转义符,了解一下

一直在学习 发表于 2021-3-23 18:47:22

wp231957 发表于 2021-3-22 20:41
转义符,了解一下

'\0'也可以是转义符,然后1和2只是字符,为什么这样就不行呢

小月yyds 发表于 2021-3-23 20:08:00

我觉得应该\之后代表的是转义字符,而不是你理解的这种分割开来,你可以去找一下c99标准

shiwobuhaoma 发表于 2021-3-23 22:52:32

strlen()方法是检测到‘\0’就是字符串的结尾了,讲道理应该是0,而不是1,但是因为统计字符个数的变量在检测到‘\0’后又++了,所以返回1.

鱼粉子 发表于 2021-10-30 17:37:29

#include<stdio.h>
#include<string.h>
int main()
{
    char a;
    while (gets(a))
    {
      int i,c=0;
      for(i=strlen(a)-1;i>=0;i--)
      {
            if(a!=' ') c++;
            if(a==' '&&c!=0) break;
      }
      printf("%d\n",c);
    }
    return 0;
}

jhq999 发表于 2021-10-30 19:01:26

在内存里就是0xa,0x0.
页: [1]
查看完整版本: 字符串长度