黑马程序员技术交流社区

标题: 字符串 [打印本页]

作者: qianlongwuyong    时间: 2015-3-23 11:17
标题: 字符串
计算字符串的长度时英文字母间的空格要计算在内吗。去i like c这个字符串的长度是多少
作者: xiedongjiao    时间: 2015-3-23 11:23
这个敲下代码就知道了,用strlen就可以得出字符串的长度,想知道字符串占用空间的大小,可以用sizeof来得到结果
作者: Ammar    时间: 2015-3-23 11:38
  1. #include <stdio.h>
  2. #include <string.h>

  3. int main()
  4. {
  5.     char *str = "i like c";
  6.     int s = strlen(str);
  7.     printf("字符串的长度是%d\n", s);
  8.     return 0;
  9. }
复制代码

作者: Ammar    时间: 2015-3-23 11:39
Ammar 发表于 2015-3-23 11:38

Ammar$ cc 13-String.c
bogon:c语言练习 Ammar$ ./a.out
字符串的长度是8
作者: 远汀枫舞    时间: 2015-3-23 12:20
#include <stdio.h>
作者: 远汀枫舞    时间: 2015-3-23 12:40
#include <stdio.h>
#include <string.h>

void longer(char *c)
{
        int size = strlen(c);
        int size2 = sizeof(c);
        printf("字符串的长度:%d\n,字符串占用空间%d\n",size,
           size2);

}


int main()
{
        char *cc = "i like you";
       
        longer(cc);

        return 0;
}
刚不知怎么回事呢。
作者: 唐绍禹    时间: 2015-3-23 12:47
不能这么算吧,字符串最后一个字符是\0,有空格的话就不能构成字符串了
作者: 静好    时间: 2015-3-23 13:14
strlen这个函数只是不会计算最后'\n'这个字符的长度




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2