关于char、string字符串输入总结

本文详细解析了C及C++中不同字符串输入方法的特点,包括scanf、cin、cin.getline、getline等函数的区别与应用场景,特别关注如何正确处理包含空格的字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C中

    char ch[100];

1.scanf("%s",ch); //输入中在遇到空格符、回车符时会认为字符串已经结束

2.cin >> ch; // 输入中在遇到空格符、回车符时会认为字符串已经结束

3.cin.getline(ch,100);// 输入中只会在遇到回车符时认为字符串结束,即可以接收空格

4.cin.getline()中如果是3个参数,最后一个参数是字符串的结束标志,此参数省略时,默认是‘\0’

4.gets(ch);// 输入时接收空格,只用于char 中

5.getchar();// 输入一个字符,通常也用来吃空格和换行

C++中

    string s;

1.cin >> s;// 输入时遇到空格符、回车符后会认为字符串已经结束

2.getline(cin,s);// 输入中接收空格

3.getline()中也可以有3个参数,与cin.getline()用法相似

更新:

由于有些版本的codeblocks不能用gets,最近刚get到了一个新操作,也可以输入带空格的字符串

scanf("%[^\n]",ch);//注意是反斜杠

感觉还是比较好用的,也比较好记,把s换一下就欧了

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值