cin cout

cin、cout是对象,以cout为例说明。
cout是ostream类的对象。声明在iostream文件中,  
#ifdef _M_CEE_PURE
__PURE_APPDOMAIN_GLOBAL extern istream cin, *_Ptr_cin;
__PURE_APPDOMAIN_GLOBAL extern ostream cout, *_Ptr_cout;
__PURE_APPDOMAIN_GLOBAL extern ostream cerr, *_Ptr_cerr;
__PURE_APPDOMAIN_GLOBAL extern ostream clog, *_Ptr_clog;

定义我猜应该在某个.lib .dll中。
cout<<"hi";之所以与printf("hi");差不多,是因为ostream类重载了operator<<函数。
ostream &myCout=cout;myCout<<"hi";也能正常运行。

cin

微笑在单词区配时,常以0~9,a~z,A~Z以外的单词作为单词间分隔,可用

int isalnum(char n);
//不为以上三种情况时返回0

还有

isdigit();isalpha();

微笑当需要读入一行字符串,字符串中可能含有空格' '时,可用:

string a;
getline(cin,a);

微笑一般的ACM题都有多组测试数据,若事先不告诉几组,可:

while (cin>>a){
...
}

微笑若一组数据包含两行字符串,可以:

while(getline(cin,str_1) && getline(cin,str_2){
...
}


有些题涉及到累加,注意用

unsigned long long

微笑按行读整数

微笑cin>>遇到回车或空格停止本次读入,流中的空格或回车被抛弃。

cin.get(),一次读一个字符,空格或回车可在流中。scanf("%c",&ch)的形式同cin.get();.

 char str[100]; scanf("%s",str); 这种形式也是读不进空格和回车的。有些输入有数字、空格、回车和字符。读入str后对str[0]进行判断,很妙哦。

文本文件为 “空格 空格 空格 回车 空格 空格 回车 空格 回车”,程序结果见下:
cin cout_第1张图片



cout

undone




 

你可能感兴趣的:(cin cout)