A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© qianlongwuyong 中级黑马   /  2015-3-23 11:17  /  1140 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

计算字符串的长度时英文字母间的空格要计算在内吗。去i like c这个字符串的长度是多少

7 个回复

倒序浏览
这个敲下代码就知道了,用strlen就可以得出字符串的长度,想知道字符串占用空间的大小,可以用sizeof来得到结果
回复 使用道具 举报
  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$ cc 13-String.c
bogon:c语言练习 Ammar$ ./a.out
字符串的长度是8
回复 使用道具 举报
#include <stdio.h>
回复 使用道具 举报
#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;
}
刚不知怎么回事呢。
回复 使用道具 举报
不能这么算吧,字符串最后一个字符是\0,有空格的话就不能构成字符串了
回复 使用道具 举报
静好 初级黑马 2015-3-23 13:14:13
8#
strlen这个函数只是不会计算最后'\n'这个字符的长度
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马