string类型

(1).用string的成员方法length()获取字符串长度

length()比较直观,表示的就是该字符串的长度。

#include <bits/stdc++.h>using namespace std;int main()
{string s;cin>>s;cout<<s.length()<<endl;return 0;
}

(2).用string的成员方法size()获取字符串长度

size()表示的是string这个容器中的元素个数。如果使用过std::vector之类的容器的话,可以把string看做是一个vector<char> (这里只是举例,并不能等价), char就是这个容器的元素类型。那么size()表示的就是这个vector(容器)中char的个数。

#include <bits/stdc++.h>using namespace std;int main()
{string s;cin>>s;cout<<s.size()<<endl;return 0;
}

(3).用strlen获取字符串长度

strlen同样也可以用于C++的string。但是需要用c_str()将C++ string转换为char*类型。

#include <bits/stdc++.h>using namespace std;int main()
{string s;cin>>s;int len=s.length();cout<<len<<endl;return 0;
}

char类型

(1).用strlen函数

strlen()函数求出的字符串长度为有效长度,既不包含字符串末尾结束符 ‘\0’;

#include <bits/stdc++.h>using namespace std;int main()
{char s[100];cin>>s;cout<<strlen(s)<<endl;return 0;
}

(2).用sizeof函数

sizeof()操作符求出的长度包含字符串末尾的结束符 ‘\0’;

#include <bits/stdc++.h>using namespace std;int main()
{char s[100];cin>>s;cout<<sizeof(s)<<endl;return 0;
}

注意:当在函数内部使用sizeof()求解由函数的形参传入的字符数组的长度时,得到的结果为指针的长度,既对应变量的字节数,而不是字符串的长度,此处一定要小心。

(3).

#include <bits/stdc++.h>using namespace std;int main()
{char s[100];cin>>s;int i=0;while(s[i++]!='\0');cout<<i<<endl;return 0;
}

求字符串的长度(string char)相关推荐

  1. C语言求字符串的长度

    C语言求字符串的长度 问题描述:求This is a C program字符串的长度: 问题分析:首先,了解字符串在C语言的定义,C语言中字符串是通过字符指针来间接实现的.利用一个循环来遍历该字符串, ...

  2. 不使用strlen函数求字符串的长度的方法

    今天翻到了一些有趣的帖子,其中有一个是不使用strlen函数求字符串的长度. 我首先想到的是用一个变量做累加器,然后遍历循环这个字符串. #include <stdio.h> int st ...

  3. C语言 | 求字符串的长度

    例78:C语言写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度,要求用指针. 解题思路:求字符串的长度,还要求用指针,读者首先应该想一下不用指针是否可以,求字符串的长度需要判断 ...

  4. 编写函数求字符串的长度

    编写一个函数,求字符串的长度,在main函数中输入字符串,能够输出其长度. #include<stdio.h> #define N 80 int mystrlen(const char c ...

  5. C语言实现求字符串的长度

    C语言实现strlen()求字符串的长度. 用递归和循环的方法求 #include<stdio.h> #include<stdlib.h>int strlen_di(char ...

  6. C语言:求字符串的长度

    问题: 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度. 代码 #include <stdio.h> #include <stdlib.h> int ...

  7. c语言编写函数length求字符串的长度。

    要求:在主函数main中输入字符串,并输出字符串的长度.不能使用strlen库函数. 例如:输入hello,则输出5. #include<stdio.h> int length(char ...

  8. 不用库函数实现求字符串的长度

    int fun(char *x) {char *y = x;while(*y++);return (y-x-1); }

  9. sprintf,求字符串长度

     int sprintf( char *buffer, const char *format[, argument]... ); buffer:Storage location for outpu ...

最新文章

  1. Flutter开发之布局-2-row(16)
  2. 数据库原理与应用(SQL Server)教程 主键、外键以及联合主键、复合主键和设置种子数目和增量
  3. Android开发之设置DialogFragment的窗体背景色的方法亲测可用
  4. 华为开启位置服务器,android 开启位置服务器
  5. 移动端适配之二:visual viewport、layout viewport和ideal viewport介绍 1
  6. python是什么-什么是Python?最全的python百科
  7. 从零基础入门Tensorflow2.0 ----四、12. tf_data基础api使用
  8. 3月12日 对极几何,本征矩阵,基础矩阵,F/E矩阵计算,恢复旋转与平移,三角化视图重建
  9. verilog Booth算法乘法器的实现(有无符号)
  10. Leco题目:两数之和
  11. matlab 颜色半透明,使用matlab画半透明椭圆
  12. timer延迟1us_STM32 Systick定时器在实现1us延时的问题与解决
  13. Sentence Centrality Revisited for Unsupervised Summarization
  14. 七牛云被攻击偷跑流量
  15. StringUtils字符串工具类
  16. LLC输出滤波电容选择
  17. 解决QQ或者谷歌不能联网而其他浏览器能运行的问题
  18. 高项_第四章项目整体管理
  19. Windows远程连接电脑怎么配置远程音频
  20. 360路由器v2刷第三方固件_己亥年网件R6220路由器刷openwrt固件的方法(亲测可用)...

热门文章

  1. 新生儿护理问题(上)
  2. 人工智能红利到来的核心标志,首先是要有能看得见的场景
  3. Q1营收超预期 为何好未来仍满足不了投资者“胃口”?
  4. VB医院电子病历信息系统
  5. 揭秘MOS管在音响功放中的详细应用
  6. 朋友们,一起学习下 Chrome DevTools Protocol。
  7. IDEA中Translation插件google翻译无法使用的问题
  8. blender教程的下载链接
  9. Python将DOCX转换为markdown文件
  10. 计算机硬盘标有红色感叹号咋办,usb composite device黄色感叹号怎么办