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将字符串放到数组中,并自动在结尾处添加空字符

相关推荐
沫璃染墨3 分钟前
《从零入门Linux系统篇(五十八):线程篇·十一——线程安全与死锁详解:从可重入到多锁管理》
linux·服务器·开发语言·c++·驱动开发·安全·架构
郝学胜_神的一滴7 分钟前
C++ Templates 05:那些容易踩坑的技巧性基础知识
c++·visual studio
朝朝辞暮i25 分钟前
C++ 第 40 章:ROS2 Publisher + Timer + Subscriber + Callback + Executor 完整闭环
开发语言·c++·算法·ros2
旖旎夜光1 小时前
LeetCode 1576: 替换所有的问号(模拟) —— 题解
c++·学习·算法·leetcode·力控
朝朝辞暮i1 小时前
C++ 第 38 课:线程、SingleThreadedExecutor、MultiThreadedExecutor、Callback Group
开发语言·c++·算法·ros2
(Charon)1 小时前
【C++面试】互斥锁与读写锁:使用场景、实现原理与写饥饿问题
c++·算法
by209992 小时前
list 的使用:把节点、位置和操作联系起来的综合叙述(上)
数据结构·c++·笔记·list
welfare9622 小时前
新号别搞:vector
c++
welfare9622 小时前
新号别搞:string
c++
xh didida3 小时前
Linux -- 进程概念
linux·服务器·开发语言·c++