C++: cin】的更多相关文章

cin.ignore(a,ch)方法是从输入流(cin)中提取字符,提取的字符被忽略(ignore),不被使用.每抛弃一个字符,它都要计数和比较字符:如果计数值达到a或者被抛弃的字符是ch,则cin.ignore()函数执行终止:否则,它继续等待.它的一个常用功能就是用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响.比如可以这么用:cin.ignore(1024,'\n'),通常把第一个参数设置得足够大,这样实际上总是只有第二个参数'\n'起作用,所以这一句就是把回车(包括…
#cin的使用问题 cin输入类型不匹配的情况: #include<iostream> using namespace std; void main() { int i = 0; while(i<4) { int nNumb; cin >> nNumb; //如果再输入的时候输入字符串类型例如"Hello",则下次进入循环时遇到cin是不会阻塞 ++i; } return; 原因: 这是由于cin在接受键盘的缓存时由于接收的类型与变量类型不符,它会返回一个…
相较using std::cin使用using namespace std不会使得程序的效率变低,或者稳定性降低,只是这样作会将很多的名字引入程序,使得程序员使用的名字集合变小,容易引起命名冲突. 在一般的小程序中使用using namespace std,在大的项目中使用using std::cin这种格式.…
zoj遇到c++如何判定输入流结尾的问题,一不小心就超时了 楼下的代码可以通过zoj #include<iostream> using namespace std; int main(){ int a,b; while(true){ cin>>a>>b; if(cin.eof()){//换成fail(),或是good()也可以通过 break; } int sum=a+b; cout<<sum<<endl; } return 0; } 这里也可以…

cin

cin 是预定义的标准输入流对象,cin 用来接收字符串时,遇“空格”.“TAP”.“回车”时都会结束.…
输入和输出并不是C++语言中的正式组成成分.C和C++本身都没有为输入和输出提供专门的语句结构.输入输出不是由C++本身定义的,而是在编译系统提供的I/O库中定义的.C++的输出和输入是用"流"(stream)的方式实现的.图3.2和图3.3表示C++通过流进行输入输出的过程. 有关流对象cin.cout和流运算符的定义等信息是存放在C++的输入输出流库中的,因此如果在程序中使用cin.cout和流运算符,就必须使用预处理命令把头文件stream包含到本文件中:     #includ…
char s[100]; cin>>s;         // 输入一个字符串,遇“空格”.“TAB”.“回车”都结束 cin.getline(s, 20);    // cin.get(字符数组名, 接收字符数目) 输入一行字符串,可以接收空格 // cin.getline()实际上有三个参数,cin.getline(接受字符串的看哦那间m, 接受个数5, 结束字符) cin.get(字符数组名, 接收字符数目)  // 输入一行字符串,可以接收空格 gets(s); ch = getcha…
strlenstrlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0').指实际字符串或字符数组的实际长度(不是所占空间的字节数).函数原型extern unsigned int strlen(char *s)意思是,他从指针指向的某个地址开始扫描,并读取字符,一直读到'\0'为止,不包括'\0'strlen用于字符数组或者指针 字符型数组char…
这个问题困扰了我有一段时间了,趁着十一放假有时间,仔细研究了一下 首先来看一下输入输出运算符cin>>的构成:cin和>> cin>>是由两部分构成的,cin和>>,其中cin是输入流istream类的一个对象,隶属于iostream函数库 而>>则是运算符:这个运算符的作用是:从左侧cin对象中读取数据,并将它赋给右侧的运算对象 大体的大概说完了,接下来就是干货了!! ......................................…
为什么可以用while(cin)?   /** * @brief The quick-and-easy status check. * * This allows you to write constructs such as * "if (!a_stream) ..." and "while (a_stream) ..." */ operator void*() const { return this->fail() ? 0 : const_cast<…
  问题描述一:(分析scanf()和getchar()读取字符) scanf(), getchar()等都是标准输入函数,一般人都会觉得这几个函数非常简单,没什么特殊的.但是有时候却就是因为使用这些函数除了问题,却找不出其中的原因.下面先看一个很简单的程序:程序1:    #include <stdio.h>    int main()    {char ch1, ch2;scanf("%c", &ch1); scanf("%c", &…
cin是C++的输入流,可以通过>>进行读取. 判断读取结束,一般有两种方法,具体取决于与输入的约定. 1 以特殊值结尾. 如输入整数,以-1结束,那么当读到-1的时候,就确定读取结束了. 代码: int n; while(1) {     cin>>n;     if(n == -1)break;     //处理输入的合法值. } 2 以EOF结尾,即文件结束符. 这种处理方式适用于以文件作为输入,或者在键盘手动输入文件结束符作为结尾标记. 代码: int n; while(c…
这几个输入函数经常搞不清具体特点和用法,这里稍作总结 一.cin>> 1.最基本用法,输入一个变量值 2.输入字符串,遇“空格”.“TAB”.“回车”结束,比如输入“hello world”,输出“hello” 二.cin.get() 1.用来接收字符,比如 char c; c=cin.get();//或者cin.get(c); cout<<c; 输入 hello,输出h; 2.cin.get(字符数组名,接收字符数目)用来接收一行字符串,可以接收空格,例如 char a[12];…
scanf和cin的差异 引例:http://www.cnblogs.com/shenben/p/5516996.html 大家都知道,在C++中有两种输入.输出方式—scanf和cin,但是,它们之间存在的差异,你们知道么?下面请看测评吧!   测试题目: 输入n个数,输出n个数.   测试环境:ubuntu12.04 i3CPU 4G内存 7200转硬盘 测试结果: 测试结果使用linux的time测试时间,结果如下:   10000组数据时: real代表程序执行总时间,user代表用户输…
1. 首先cin>>a返回的是左操作数,也就是返回cin. cin的条件状态中: cin.eof()    判断流是否到达文件的结束符 cin.fail()    判断IO操作是否失败 在while(cin>>a)中看流是否还能用,主要是判断 cin.fail()  的取值.事实上,无论是否用于while循环,流必须处于无错误状态才能用于输入和输出 ,也就是cin.fail() 必须为0值,程序以下的cin操作才能正常执行. 导致cin.fail() 为1的操作有:输入坏值 或 遇…
1.cin>> 用法1:最基本,也是最常用的用法,输入一个数字: 注意:>> 是会过滤掉不可见的字符(如 空格 回车,TAB 等) cin>>noskipws>>input[j];//不想略过空白字符,那就使用 noskipws 流控制 用法2:接受一个字符串,遇“空格”.“TAB”.“回车”都結束 #include <iostream> using namespace std; main () { ]; cin>>a; cout&l…
#include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get getline gets getchar 的用法实例 void main(int argc, char* argv[]) { //1.cin>> //method one, 也就是最常用的方法 输入一个数字 :" << endl; int a,b; cout << …
Ubuntu虚机中SVN连接出错,虚机本机可正常CO,CIN,外面机器无法正常连接. 解决: 虚机换个IP即可正常连接,原因不明,有可能为公司网管对该IP做了某些限制. PS:VMware中只需将网络设置为桥接,即可将虚机做为一个单独的机器运行.…
cin>>m>>n; ;i<=m;i++) { ; char ch=' '; ) //在遇到换行之后进入下一层循环读入. { x++; cin>>c[x]; ch=getchar(); } 神奇的输入. get skill!…
在程序中一般用cout和插入运算符“<<”实现输出,cout流在内存中有相应的缓冲区.有时用户还有特殊的输出要求,例如只输出一个字符.ostream类除了提供上面介绍过的用于格式控制的成员函数外,还提供了专用于输出单个字符的成员函数put.如:    cout.put('a');调用该函数的结果是在屏幕上显示一个字符a.put函数的参数可以是字符或字符的ASCII代码(也可以是一个整型表达式).如    cout.put(65 + 32);也显示字符a,因为97是字符a的ASCII代码. 可以…
c++ 中cin.ignore(100,'\n'); 的作用是清除输入流中多余的字符请问这句话是什么意思? 可以举个例子吗? 提问者采纳 这个其实就是忽略cin中的前100个字符,或是'\n'之前的字符 (因为cin会屏蔽'\n',所以后一个条件不会起作用,可以改成'#'试试). 如:  string str;   cin.ignore(5, '#');  cin >> str;   cout << str << endl; 如果输入 "12345678&qu…
今天在练习的时候突然发现了这个问题,百度之感觉还挺常见的,故记之! //题目描述 // //写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串. // //输入描述 : //输入一个十六进制的数值字符串. // // //输出描述 : //输出该数值的十进制字符串. #include<iostream> #include<string> using namespace std; void fun(string str) { if (str.empty()) { r…
C++中cin.cin.get().cin.getline().getline().gets()等函数的用法 学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教 1.cin 2.cin.get() 3.cin.getline() 4.getline() 5.gets() 6.getchar() 附:cin.ignore();cin.get()//跳过一个字符,例如不想要的回车,空格等字符 1.cin>>      …
http://www.imeee.cn/News/GouWu/20090801/221298.html cin.get()与getchar()函数有什么区别? 详细点..C++中几个输入函数的用法和区别(cin.cin.get().cin.getline().getline().gets().getchar())) 1.cin1.cin.get()2.cin.getline()3.getline()4.gets()5.getchar() 1.cin>> 用法1:最基本,也是最常用的用法,输入一…
题目 输入正好是long long的最大, 但是答案超long long 所以用unsigned, 不能用cin cout否则一定超时: 不能用abs(), abs 只用于整数. unsigned   int   0-4294967295   int   2147483648-2147483647 unsigned long 0-4294967295long   2147483648-2147483647long long的最大值:9223372036854775807long long的最小值…
最近碰到一个问题,就是从控制台读取一组数,如: 12 23 34 56 若是使用 int data; while ( cin >> data ) {//...} 当回车后,不能有效转换到后面.除非输入非数字字符才能导致循环结束.这是因为cin在读取输入时,忽略空格和回车键等. 使用cin.get()可以从控制台中读取空格键,因此这段代码就可以改变为: int data; vector<int> room; while ( cin >> data ) { room.pus…
#include<iostream> #include<vector> #include<string> using namespace std; int main() { string word; vector<string> Str; while(cin>>word) Str.push_back(word); for(auto c:Str) { cout<<c<<" "; for(auto &…
Ref: http://baike.baidu.com/view/2383876.htm   此函数会一次读取多个字符(包括空白字符).它以指定的地址为存放第一个读取的字符的位置,依次向后存放读取的字符,直到读满N-1个,或者遇到指定的结束符为止.若不指定结束符,则默认结束符为'\n'.其语法为: cin.getline(字符指针(char*),字符个数N(int),结束符(char));     #include<iostream> usingnamespacestd; intmain()…
学C++的时候,这几个输入函数弄的有点迷糊:这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教(本文所有程序均通过VC 6.0运行) 1.cin 2.cin.get() 3.cin.getline() 4.getline() 5.gets() 6.getchar() 附:cin.ignore();cin.get()//跳过一个字符,例如不想要的回车,空格等字符 1.cin>>          用法1:最基本,也是最常用的用法,输入一个数字: #includ…
2013-07-09 18:55:42 EOF是文件的结束符,具体可以作为文本文件的结束符,也可以作为键盘输入char类型数据时的结束符.对于不同的系统,EOF的定义可能不同,一般定义为-1.因为char类型的数据范围是0~255,不可能是-1,EOF定义为0~255之外的数据理论上都是可以的. 一般在C语言中用getchar()函数或scanf获取char类型时,可用EOF作为结束符.但对于C++,若用getchar()函数或scanf获取char类型时,也可用EOF作为结束符,这是兼容C的特…