终于等到你

众里寻他千百度,蓦然回首,那人却在灯火阑珊处。

程序设计题目中的输入输出

程序设计题目中的输入输出#

一般而言,为了输入输出方便,许多人喜欢cin,cout。一般没有问题,但是cout输出格式控制较麻烦,而且对于有些题目输出量超过1e6甚至1e5的话,就需要注意,使用cin可能会TLE。当然关同步是一种解决办法,使用最好的还是使用scanf和printf

输出一行的问题###

1.gets

char *gets(char *s);

gets从stdin中读入一行内容到s指定的buffer中,当遇到换行符或EOF时读取结束。读取成功时,返回s地址;失败时返回null。需要注意的是,gets会将行末尾的’\n’字符或EOF替换成’\0’,这样,gets读取的内容中不包括’\n’字符。如果要获取读取字符串的长度,可以调用strlen函数获得。

2.fgets

char *fgets(char *s, int size, FILE*stream);  

fgets(buff,10,stdin);//fgets头文件为cstdio

fgets从stream中读取最多size-1大小的内容到s指定的buffer中,当遇到换行符或EOF时读取结束。读取成功时,返回s地址;失败时返回null。需要注意的是,fgets会在所读取的内容后面添加’\0’,这样,fgets读取的内容中会包括行末尾的’\n’字符。如果要获取读取字符串的长度,可以调用strlen函数获得。

3.getline
对于C++语言,如果使用C字符串的话,就采用cin.getline()函数,如果采用string型字符串的话,就采用全局函数getline(cin,n);

注意,这两个函数都不读入最后的换行符。

string s;
char str[256];
getline(cin, s);
cin.getline(str, sizeof(str));  
posted @ 2020-03-10 12:32  gzr2018  阅读(320)  评论(0编辑  收藏  举报