首页 > 其他分享 >字符串长度【语法题】【字符串的多种输入方式】

字符串长度【语法题】【字符串的多种输入方式】

时间:2023-03-06 11:55:23浏览次数:38  
标签:char string cin 语法 字符串 长度 getline 回车

字符串长度

给定一行长度不超过 100 的非空字符串,请你求出它的具体长度。

输入格式
输入一行,表示一个字符串。注意字符串中可能包含空格。

输出格式
输出一个整数,表示它的长度。

数据范围
1≤字符串长度≤100
字符串末尾无回车

输入样例:
I love Beijing.
输出样例:
15

代码

点击查看代码
#include<iostream> 

using namespace std;

int main(){
    string s;
    getline(cin,s);
    cout << s.size();
}

小结

  • 按整行读到string ,推荐用 方法2 getline(cin, string)
  • 按整行读到char[] ,推荐用 方法4 cin.getline(char*,size)
  • 读单个字符串,推荐用 cin>>

按行读
方法2 getline(cin, string) 和 方法4 cin.getline(char,size) 会读到回车为止,并且会把回车丢弃
方法3 cin.get(cin, char
) 不丢弃回车

其他: fgets 会多读入一个回车,比较麻烦

读字符串
cin >> char* 会自动忽略起始的空格/回车/tab,结尾如果有回车空格,不会丢弃。 ” aa” => “aa”
scanf("%s", char*) 同上
cin >> string 同上
//忽略前面的,因此不妨碍多次输入

getline和cin.getline的区别

getline是string的成员函数,因此按整行读到string ,推荐用 方法2 getline(cin, string)
cin。getline第一个参数是要存储字符串的数组的名称。第二个参数是数组的大小。当 cin.getline 语句执行时,cin 读取的字符数将比该数字少一个,为 null 终止符留出空间,cin.getline()在使用的时候,必须传入字符数组,并且还需要指定字符数组的长度,非常的不方便,有时候我们并不知道我们要操作的字符串到底有多长,因此能用getline就用getline整行读到char[] ,推荐用 方法4 cin.getline(char*,size)

标签:char,string,cin,语法,字符串,长度,getline,回车
From: https://www.cnblogs.com/J-12045/p/17183229.html

相关文章

  • string类型与字符串结束符
    std::string(也就是C++中的string):标准并没有规定字符串必须以\0字符结尾。编译器在实现时既可以在结尾加上\0,也可以不加,这个是由编译器决定的,因为string是一个类,它的长度......
  • Winfrom/CSharp中获取当前时间戳字符串、存储Sqlite数据库、时间戳转换与比较大小
    场景Winform中操作Sqlite数据增删改查、程序启动时执行创建表初始化操作:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/129322345在上面Winform中操作Sql......
  • 左旋转字符串【剑指Offer, 语法题】
    左旋转字符串字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如输入字符串"abcdefg"和数字2,该函数......
  • Yaml语法
    ##Yaml语法编程免不了要写配置文件,怎么写配置也是一门学问。YAML是专门用来写配置文件的语言,非常简洁和强大,远比JSON格式方便YAML语言的设计目标,就是方便人类读......
  • Python学习笔记(七)字符串操作
    一、数据类型转换%s字符串%d数值整数%f浮点数formatf表达式挖坑填坑法则1name='张三'2age=183height=180.545print('我的名字是%s'%name)6p......
  • markdown语法
    一级标题二级标题三级标题列表无序列表列表1列表2引用这是一条引用行内代码intmian(){printf("helloworld");}代码块intmain(){printf......
  • Java小练习--统计字符串中字母和数字的个数
    题目统计字符串中字母和数字的个数完整代码packagetestimportjava.util.Scanner;publicclasscustomer1{publicstaticvoidmain(Stringargs[]){System.out.......
  • stata:删除字符串的空格
    //替换所有空格//下面语句结果为4displength(subinstr("1233","","",.))//itrim(s)将字符间多于一个空格缩减为一个空格,对首尾空格不起作用displengt......
  • NOI / 1.7编程基础之字符串 12:加密的病历单
    描述小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得过好成绩后,主任又......
  • 1.7编程基础之字符串
    12:加密的病历单1.描述小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得......