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

相关推荐
左手の明天5 小时前
SLIP 协议封装与解析详解:原理、C 代码与实战案例
linux·c语言·开发语言·c++
青少儿编程课堂6 小时前
后缀自动机解析:本质不同子串与最长重复片段统计
c++·python·算法·bfs·信息学竞赛
朝朝辞暮i6 小时前
C++ 第 12 课:局部变量、作用域、变量生命周期
开发语言·c++·算法
无名猿8 小时前
shared_ptr 完全指南:引用计数、控制块与开销
c++·性能优化·内存管理·标准库·现代c++
xailorliu10 小时前
SLIC_超像素算法
c++·opencv·目标检测·机器学习·计算机视觉
苏打豆10 小时前
CRISP源码阅读——基于ROS2力矩反馈控制器与速度加速度零空间
c++·线性代数·算法·矩阵·机器人
小小龙学IT11 小时前
snap7 开源西门子 S7 通信协议库深度解析
c++·开源
小溪学编程12 小时前
从 C++ 的规范变迁看语言发展
jvm·c++·面试
ShineWinsu13 小时前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string