iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C++中cin的返回值问题
  • 147
分享到

C++中cin的返回值问题

2024-04-02 19:04:59 147人浏览 安东尼
摘要

目录cin的返回值cin流输入的返回值问题cin的返回值 今天在用STL时用到while(cin>>s1>>a>>s2>>b)这样的语

cin的返回值

今天在用STL时用到while(cin>>s1>>a>>s2>>b)这样的语句,本来所有的输入都是“string+int+string+int”格式的,但是结束标志却是“quit”,于是很好奇cin的输入到底是返回什么。

首先想到,cin是一个对象,那么到底是返回什么影响了while,查了很多博客才发现是操作符“>>”在起作用,这个操作符接收一个istream对象作为其做操作数,接收一个对象作为其右操作数。

”>>”操作符返回其左操作数作为结果,这样也就可以解释为什么上面可以将个几输入操作合并了。

原因在于得到输入后返回一个cin,接着可以继续操作读取了,而且在输入不符合类型和EOF时停止。

输入(cin)缓冲是行缓冲。

当从键盘上输入一串字符并按回车后,这些字符会首先被送到输入缓冲区中存储。

每当按下回车键后,cin 就会检测输入缓冲区中是否有了可读的数据。

cin流输入的返回值问题

感觉今天发现一个比较好的问题

while(cin>>n)

这个语句肯定经常看到把

但是

为什么可以用while来判断呢

难道cin>>n的返回值是bool 类型?

这时候,看源码 的 重要性就体现出来了

iOS里面有

    operator void *() const {
        if(state&(badbit|failbit) )
            return 0;
        return (void* )this;
    }

这样一段代码

再来看这样一段文字

所以说 invalid state 时 返回值为0,否则是(void *)首地址

这样就可以用while来判断了

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: C++中cin的返回值问题

本文链接: https://www.lsjlt.com/news/165147.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++中cin的返回值问题
    目录cin的返回值cin流输入的返回值问题cin的返回值 今天在用STL时用到while(cin>>s1>>a>>s2>>b)这样的语...
    99+
    2024-04-02
  • C++中cin>>n的返回值
    目录cin>>n的返回值cin>>n作为判断条件返回的是什么值呢?scanf和cin的返回值问题scanfcin小结一下cin>>n的返回值 #i...
    99+
    2024-04-02
  • C++中的函数返回值问题
    目录1、返回值2、指针类型的函数——返回指针3、返回引用4、综合示例首先,强调一点,和函数传参一样,函数返回时也会做一个拷贝。 从某种角度上看,和传参一样,也...
    99+
    2024-04-02
  • C#函数out多个返回值问题
    目录C#函数返回多个参数数值C#调用一个函数通过out返回多个变量值/数据举例总结C#函数返回多个参数数值 通过out/Ref实现,声明函数时用out指定返回变量。 写了一个DEMO...
    99+
    2023-02-24
    C#函数 C# out C#多个返回值
  • C语言中函数返回值不一致问题
    目录C语言函数返回值不一致函数的返回值注意事项函数的返回值注意事项总结C语言函数返回值不一致 在运行成程序上有时会发现函数内部的值与返回到主函数的值会相差很多出现随机值,但是它们的地...
    99+
    2023-02-24
    C语言函数 函数返回值不一致 C语言函数返回值
  • C#调用C++DLLbool返回值始终为true的问题
    目录C#调用C++ DLL bool返回值始终为true问题描述问题原因解决方案C#调用C++的DLL返回值为bool时,值混乱解决方案C#调用C++ DLL bool返回值始终为t...
    99+
    2022-11-13
    C#调用C++ DLL C++ DLL C++ DLL bool返回值 bool返回值为true
  • Mybatis Update操作返回值问题
    后端的数据持久化使用的是 Mybatis ,在做高并发下账户增减余额的时候,打算使用乐观锁来解决这个问题。在获取update操作的返回值时遇到了一个问题,似乎 Mybatis 进行 update 操作得到的 int 返回值并不是影响的行数。...
    99+
    2023-05-31
    mybatis update 返回值
  • 如何调试 C++ 函数返回值相关的问题
    调试 c++++ 函数返回值问题的关键技巧:检查函数头:确保返回类型正确,签名与实现匹配。使用调试器:跟踪函数调用、检查参数和返回值,验证数据结构状态。添加日志语句:跟踪函数执行,识别返...
    99+
    2024-04-13
    调试 c++ 返回值
  • golang函数返回值的并发问题
    go 函数返回并发类型的并发问题包括:竞态条件(返回相同的 channel 引用)、死锁(channel 无缓冲时写入阻塞)。解决方法是创建 channel 副本(竞态条件)或确保 ch...
    99+
    2024-04-23
    golang 并发问题
  • 关于ShellExecute函数返回值问题
    ShellExecute函数的返回值是一个HINSTANCE类型的值,用于表示执行结果。具体返回值的含义如下:- 如果函数执行成功,...
    99+
    2023-08-08
    ShellExecute
  • C#函数out多个返回值问题怎么解决
    今天小编给大家分享一下C#函数out多个返回值问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。C#函数返回多个参数...
    99+
    2023-07-05
  • 解决python多线程的返回值问题
    前几天看了下python的多线程,但是发现创建的线程得不到函数的返回值,查阅资料发现需要重写Thread类,直接上代码。import threadin...
    99+
    2023-01-31
    多线程 返回值 python
  • C语言中函数返回值不一致问题如何解决
    本文小编为大家详细介绍“C语言中函数返回值不一致问题如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中函数返回值不一致问题如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。C语言函数返回值不一致...
    99+
    2023-07-05
  • 解析springboot包装controller返回值问题
    1、springboot项目统一包装返回值,通常返回结果包含code、message、data,结构如下 import lombok.AllArgsConstructor; im...
    99+
    2024-04-02
  • MyBatis查询无记录时的返回值问题
    目录MyBatis查询无记录的返回值在MyBatis 3.4.1下查询无结果时的返回值报错问题mybatis的查询无结果时报错MyBatis查询无记录的返回值 在MyBatis 3....
    99+
    2024-04-02
  • C++ 函数返回值的常见问题解答:类型和含义
    c++++ 函数返回值类型可以是任何有效数据类型,包括内置类型、用户自定义类型或 void。如果未明确指定,返回类型为 int。void 函数不返回任何值,但可以修改程序状态。不能返回局...
    99+
    2024-05-03
    c++ 函数返回值 作用域
  • 函数返回值在 C++ 中的用途
    在 c++++ 中,函数可以通过 return 关键字返回值,可以是任何数据类型,包括数值和对象。返回值用于将信息或计算结果传给调用方,可用于检查错误、优化性能,并实现单一职责原则。 ...
    99+
    2024-04-30
    c++ 函数返回值 关键词
  • C语言scanf的返回值EOF
    在C语言中,`scanf`函数的返回值是一个整数。它的返回值有两种可能性:1. 如果`scanf`成功读取了输入,并且匹配了指定的格...
    99+
    2023-09-20
    C语言
  • C++中Covariant返回值类型详解
    目录前言什么是协变返回值类型(Covariant)协变返回值类型(Covariant)的作用前言 C++中当子类覆写(override)父类虚函数时,子类函数的返回值类型可以和父类函...
    99+
    2024-04-02
  • 关于jackson序列化和feign返回值的问题
    目录jackson序列化和feign返回值jackson注意点feignClient 返回值问题feign调用异常,反序列化失败异常消息如下jackson序列化和feign返回值 j...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作