C++ cin

cin

内容来自《C++ Primer》

cin使用>>运算符从输入流中抽取字符

bash 复制代码
    int carrots;
    cin >> carrots;

如下的例子,用户输入的字符串有空格

cpp 复制代码
#include <iostream>

int main()
{
    using namespace std;
    const int ArSize = 20;
    char name[ArSize]; //用户名
    char dessert[ArSize]; //用户喜欢的甜点
    
    cout << "Enter your name:\n";
    cin >> name;
    
    cout << "Enter your favorite dessert:\n";
    cin >> dessert;
    
    cout << "I have some delicious " << dessert;
    cout << " for you, " << name << ".\n";
    
    return 0;
}

如果用户输入steven jobs,如下:

cpp 复制代码
Enter your name:
steven jobs
Enter your favorite dessert:
I have some delicious jobs for you, steven.

可见,虽然本意是输入steven jobs给name,但name却是steven,而dessert则为jobs

cin如何确定已完成字符输入?

使用空白(空格、制表符和换行符)来确定字符串的结束位置。

这意味着cin会读取一个单词,读取单词后,cin将字符串放到数组中,并自动在结尾处添加空字符

相关推荐
syagain_zsx5 分钟前
jsoncpp 使用指南:编译链接、Json::Value 取值与高频坑
c++·json·库·http格式
布莱克6051 小时前
理解 = delete 与 = default:两种赋值语义的差异
c++
小小、码农2 小时前
[特殊字符]【C++11】类的新功能全面解析:移动构造、移动赋值、default、delete、final 与 override
linux·开发语言·网络·c++
库玛西2 小时前
外部排序全解析:败者树、置换-选择排序与最佳归并树
c语言·数据结构·c++·笔记·考研·算法
General_G4 小时前
创建型模式—原型(Prototype)模式
c++·设计模式·原型模式
syagain_zsx4 小时前
protobuf 实战:从 .proto 到 C++ 序列化的完整链路
c++·学习·程序人生·谷歌·protobuf
welfare9625 小时前
新号别搞:C++_list
开发语言·c++
xiaoye-duck5 小时前
《C++ 项目:手写大模型接入 SDK》云端 API 调用基础与 Apifox 调试实战
网络·c++·语言模型
坤坤子吖5 小时前
Linux 线程同步与互斥——条件变量与线程同步
linux·开发语言·c++·笔记·学习
杜 硕5 小时前
从零开始的C++生活——第二讲——03
c++·生活