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 jobsname,但name却是steven,而dessert则为jobs

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

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

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

相关推荐
say_fall11 分钟前
红黑树底层原理全解析:从 5 大性质到 STL 容器底层实现
开发语言·c++
6Hzlia13 分钟前
【Hot 100 刷题计划】 LeetCode 416. 分割等和子集 | C++ 0-1背包 1D空间极致优化
c++·算法·leetcode
FL4m3Y4n25 分钟前
分布式消息推送系统协议设计【C++ grpc kafka】
c++·分布式·kafka
无限进步_38 分钟前
二叉树的前序遍历(非递归实现)
开发语言·数据结构·c++·windows·git·visual studio
ximu_polaris40 分钟前
设计模式(C++)-结构型模式-组合模式
c++·设计模式·组合模式
青瓦梦滋41 分钟前
Linux线程的同步与互斥
linux·c++
南境十里·墨染春水42 分钟前
C++流类库 文件流操作
开发语言·c++
C++ 老炮儿的技术栈44 分钟前
工业视觉检测:用 C++ 和 Snap7 库快速读写西门子 S7-1200
c语言·c++·git·qt·系统架构·visual studio·snap
橙子也要努力变强1 小时前
信号捕捉的底层机制-内核态和用户态初识
linux·服务器·c++
澈2071 小时前
内存四区模型详解(栈、堆、全局、常量)
c++·面试·职场和发展