C++的输入和输出
本文作者frankchenfu,blogs网址http://www.cnblogs.com/frankchenfu/,转载请保留此文字。
C++是一种常用的编程语言。一个完整的程序至少要有一个输出,而我们也经常需要在程序内进行大量输入和输出。所以今天,我和大家谈一谈输入和输出。
1、cin和cout。可以连续输入,使用流(>>)。有专门的输出的换行“endl”。
cin>>a>>b;
cout<<"asdasdasd"<<endl;
2、scanf和printf。scanf和printf虽然需要占位符,不是很方便,而且容易因为系统影响在评测时莫名出错,但是它的效率大幅超过了cin和cout。
scanf("%d%lf",number,score);
printf("%d\n",rank);
3、getchar和putchar。getchar和putchar本是字符的输入和输出,但是因为快,所以更经常用于输入输出优化。下面的代码是针对全体整数的(输出需要自己输出时改符号哦)。
int s()
{
char ch=getchar();
int re=;
bool fl=;
if(ch=='-')
{
fl=;
ch=getchar();
}
while(ch>=''&&ch<='')
{
re=re*+ch-'';
ch=getchar();
}
return fl?re:-re;
}
void w(int r)
{
if(r>)
w(r/);
putchar(r%+'');
}
没有负号?更简单:
int s()
{
char ch=getchar();
int re=;
while(ch<''||ch>'')
ch=getchar();
while(ch>=''&&ch<='')
{
re=(re<<)+(re<<)+ch-'';
ch=getchar();
}
return re;
}
当然,也可以用于字符的输入输出。例如,
a=getchar();
putchar('\n');
4、gets和puts,以及getline。
这些都是针对字符串的,在写高精度的时候也会用到。需要注意的是,puts是包括输出一个换行符的,也就是说,如果输出后不想换行,只能使用printf("%s",……)了。
gets(a1);
puts("asdasdasd");
getline(cin,s1);
希望对大家有所帮助,谢谢。
C++的输入和输出的更多相关文章
- 了解一下C++输入和输出的概念
我们经常用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上.从操作系统的角度看,每一个与主机相连的输入输出设备都被看作一个文件.除了以终端为对象进行输入和输出外,还经常 ...
- [总结] I/O输入,输出
I/O输入,输出第一:先判断到底是输入还是输出,站在程序的立场第二:判断是传递字节,还是字符,决定管道粗细,字节流是最基本的数据输出管道.字符类型管道专门用来传送文本数据.Java流的四大父类:1.字 ...
- C#语言基础— 输入与输出
C#语言基础— 输入与输出 1.1函数的四要素:名称.输入.输出.加工 1.2主函数:输出语句.输入语句: Static viod Main(string[] stgs)//下划线部分可以自己指定 { ...
- Shell编程基础教程3--Shell输入与输出
3.Shell输入与输出 3.1.echo echo命令可以显示文本行或变量,或者把字符串输出到文件 echo [option] string ...
- 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出
[源码下载] 不可或缺 Windows Native (4) - C 语言: 预处理命令,输入,输出 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 预处理命令 输入 ...
- 输入和输出的总结(c语言)
c语言中有多种的输入和输出方式,下面就简单总结一下: 一.输入的三种方式 (1)scanf scanf 函数可以在变量中使用,也可以在数组中使用,当然指针上也能用到,是一个很好的输入函数.scanf是 ...
- C++——输入、输出和文件
一.C++输入和输出概述 1.1.流和缓冲区 C++程序把输入和输出看作字节流.输入时,程序从输入流中抽取字节:输出时,程序将字节插入到输出流中.对于面相文本的程序,每个字节代表一个字符,更通俗地说, ...
- C++学习42 输入和输出的概念
我们经常用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上.从操作系统的角度看,每一个与主机相连的输入输出设备都被看作一个文件.除了以终端为对象进行输入和输出外,还经常 ...
- C++:文件的输入和输出
1.共同的打开文件方式: fin.open("test.txt",ios::binary) fout.open("test.txt",ios::binary) ...
- YTU 2609: A改错题--学生信息的输入和输出
2609: A改错题--学生信息的输入和输出 时间限制: 1 Sec 内存限制: 128 MB 提交: 238 解决: 157 题目描述 注:本题只需要提交标记为修改部分之间的代码,请按照C++方 ...
随机推荐
- Mysql的MySqlDataReader对于MysqlConnection是独占式
写Secondlife智能体的知识系统小插件的时候遇到的这个问题. 在把某个NPC的全部知识复制给另一个NPC的时候,对数据库操作,为了提升一点效率希望与数据库建立一次连接,全部添加进表以后再断开连接 ...
- 基于Apache搭建Nagios图形监控
基于apache 的稍微简单一点么?实验一下子就OK了... 环境: System: [root@losnau etc]# cat /etc/issueRed Hat Enterprise Linux ...
- iOS开发——获取当前屏幕显示的viewcontroller
获取当前屏幕显示的viewcontroller,然后想怎么跳就怎么跳. - (UIViewController *)getCurrentVC { UIViewController *result = ...
- Tomcat与Nginx、Apache结合的相关实践
一.LNMT 简介:在Tomcat服务器前端部署一个Nginx(反向代理),当用户请求静态资源时,由Nginx服务器负责响应:当用户请求java应用程序资源时,由后端的Tomcat服务器进行响应. 环 ...
- layer 的一些知识
layer类似于ps的图层,如果把一个uiview看做图片的画,layer就像是图层.一个图片是由很多个大小不同的有层次的图层构成的,uiview也是. 1. 一个view有一个underlying ...
- Android 编译错误
本人使用的是Android studio1.3版本,前几天调试通过的项目,现在编译出现了错误.错误信息如下 Project app: apk dependencies can only be jars ...
- iOS开发——判断邮箱格式
//判断邮箱格式 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@ ...
- Javascript 页面刷新
Javascript 页面刷新的实现代码收藏 1 2 3 4 5 6 7 8 history.go(0) location.reload() location=location location.as ...
- LRU Cache 题解
题意 Design and implement a data structure for Least Recently Used (LRU) cache. It should support the ...
- 由浅入深Mysql优化
选Mysql优化作为我的第一篇博文,实在是因为这个东西很有意思,也是能体现后端开发人员设计细节及逻辑分析的一个知识点. 那么来吧: 作为Mysql优化,很多人大概能跟着感觉说出如下 : (1)常 ...