美文网首页
c++ 输入输出

c++ 输入输出

作者: yz_wang | 来源:发表于2018-01-01 22:23 被阅读0次

语句对比

http://blog.csdn.net/hou09tian/article/details/70045040
scanf()
遇到空格或回车都会认为是输入结束。处理多种格式的输入。

 while (scanf("%d%d", &n, &e) != EOF)  //每次读两个数

%c 读入一个字符
%d 读入十进制整数
%s 读入一个字符串
%f 读入一个浮点数
%i 读入十进制,八进制,十六进制整数
%o 读入八进制整数
%x 读入十六进制整数
%p 读入一个指针
%u 读入一个无符号十进制整数
%% 读%符号
附加格式说明字符表
修饰符 说明
L/l 长度修饰符 输入"长"数据
h 长度修饰符 输入"短"数据
W 整型常数 指定输入数据所占宽度

  • 星号 空读一个数据

EOF: end of file

 while (scanf("%17s%c", str, &check) != EOF)  //前17为读为字符串,最后一位读为字符

gets()
处理字符串输入。遇到回车会认为是输入结束
gets()函数和scanf()函数都不能处理回车符。即把回车符看作再次输入的字符。

string str;
gets(str);
char str[100];
gets(str);
int i=0;
while(str[i]1='\0'){
  ....;
  ++i;
}

getline()
函数遇到回车停止读入,但是此时会屏蔽回车键。

string a, b;
    getline(cin, a);//为了防止第一行是空的,不能用cin >> a,用getline(cin, a)
    getline(cin, b);

getchar()
消除回车问题

效率对比

c 的输入比 c++ 快


相关文章

网友评论

      本文标题:c++ 输入输出

      本文链接:https://www.haomeiwen.com/subject/gmsxnxtx.html