C风格的输入输出

(1) int getchar() 与 int putchar(int c)

getchar从stdin输入流中读取字符,每次只能读取一个字符。若想一次性读取多个字符,则可将其放入循环中。getchar读取所有类型的字符,包括空格。

putchar将一个字符打印到屏幕上,每次只能打印一个字符。例如:

char a;
while( (a=getchar()) != 'e')   ##输入流中是一长串的窗口输入,getchar()从输入流中挨个读取字符,写入到a中,当碰到字符e时,终止循环。
   putchar(a);  ## 该处也可用 printf("%c", a);

(2) char* gets(char *s)和 int puts(const char* s)

char* gets(char *s)函数从stdin中读取一行到s指向的缓存空间中, 一个新行或者EOF符号作为一次读取的终结。

例如:

char str[100];

gets(str);

printf("\n You entered: ");

puts(str);

gets(str)同样可以用在循环中,作为判定条件。C++中也使用std::gets函数,该函数在C++11中被deprecated(弃用,仍然可以用),在C++14中将被完全移除。

(3) int scanf(const char* format, ... )和 int printf(const char* format, ...)

format可以是%s(字符串), %d(整数), %c(字符), %f(浮点数)等。

scanf可以忽略空格。scanf("%d', &a); 级联输入方式:

int a,b;

scanf("%d %d", &a, &b);

该中输入方式也可作为循环的判定条件,while(scanf("%d %d", &a, &b)) 和下述C++风格的输入std::cin类型,输入数据类型和变量的声明类型不同时,scanf函数返回0, 循环终止。

#########C++风格的输入输出###########

输入方式为std::cin>> a, 也可以采用级联输入的方式std::cin>>a>>b. 该输入方式可以忽略空格。

需要注意的是最终得到的输入值和a,b声明的类型有很大关系,例如:

int a;

char b;

cin>>a>>b;

编译后,加载运行时,输入29, 29. 则最终得到的a=29, 而b=2。即a被定义为一个算数类型int,29输入到a中,b被定义为一个字符类型,只读取第一个字符2.

同时也要注意 cin>>a的返回类型,例如:

while(cin>>a)

当输入类型与a的声明类型不一致时,cin>>a会返回0,跳出while循环。当输入类型一致时,返回一个非零值,循环继续。

输出方式为std::cout<< c<< endl. endl为换行,使用很简单,在此不赘述。

C/C++-style输入输出函数的更多相关文章

  1. c语言的输入输出函数

    参考文章: http://blog.sina.com.cn/s/blog_784f40b80100psg9.html C语言输入输出函数分为两类: 1.格式化输入输出函数 2.非格式化输入输出 --- ...

  2. C语言中最常用的三种输入输出函数scanf()、printf()、getchar()和putchar()

    本文给大家介绍C语言中最常用的三种输入输出函数scanf().printf().getchar()和putchar(). 一.scanf()函数格式化输入函数scanf()的功能是从键盘上输入数据,该 ...

  3. C语言中输入输出函数

    1.1.1 格式化输入输出函数Turbo C2.0 标准库提供了两个控制台格式化输入. 输出函数printf() 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据.pri ...

  4. Linux C 程序 输入输出函数(THREE)

    标准输入输出函数#include<stdio.h>stdio 是 standard input & output 的缩写 字符数据输入输出函数: putchar() , getch ...

  5. c语言输入输出函数

    上学年学习c语言的时候比较匆忙,没好好吸收. 现在有时间好好复习下. 本文就c语言常见输入函数进行简单介绍,对比. ps:由于自己能力有限,时间有限,多数介绍,总结都是摘录网上相关学习资料,下面给出本 ...

  6. C字符串输入输出函数

    下面就几个常用的字符串输入输出函数做个小小的总结TAT 使用时添加头文件:#include<stdio.h>. scanf("格式控制字符串",变量地址列表):(pri ...

  7. C++中的字符串的输入输出函数、空字符与空格的区别、字符变量赋值和字符串初始化

      一.字符串输入输出函数 1.  cin.get()   逐个字符输入输出 2.  cin 可以将整个字符串一次性输入,但是,cin将空格.Tab和回车键,因此不能用于数组的一次性输入. 注意:ci ...

  8. C语言 · 字符串输入输出函数

    算法提高 3-2字符串输入输出函数   时间限制:1.0s   内存限制:512.0MB      描述 编写函数GetReal和GetString,在main函数中分别调用这两个函数.在读入一个实数 ...

  9. 【222】◀▶ IDL 输入输出函数说明

    参考:I/O - General Input/Output Routines —— 基本输入输出函数 01   PRINT/PRINTF 格式化输出. 02   READ/READF 格式化输入. 0 ...

随机推荐

  1. NodeJS的url信息截取模块url-extract

    NodeJS的url信息截取模块url-extract2013-09-12 22:49 by Justany_WhiteSnow, 212 阅读, 0 评论, 收藏, 编辑 上一篇文章,介绍了怎么利用 ...

  2. Attempted to lock an already-locked dir异常解决方法

    有时候因网络太慢或中断 就会出现这种锁定状态 Attempted to lock an already-locked dir svn: Working copy 'D:\MyEclipse\mypro ...

  3. 项目做成jar包

    项目做成jar包 方法一.在eclipse3.1中把项目做成jar包步骤. 打包前的工作. 在项目下创建一个文件夹,名为META-INF,再在其下创建文件MANIFEST.MF 编辑的内容如下: Ma ...

  4. 最小堆实现优先队列:Python实现

    最小堆实现优先队列:Python实现 堆是一种数据结构,因为Heapsort而被提出.除了堆排序,“堆”这种数据结构还可以用于优先队列的实现. 堆首先是一个完全二叉树:它除了最底层之外,树的每一层的都 ...

  5. python cookbook学习笔记 第一章 文本(2)

    1.6合并字符串 ka=list('kaluoc') #字符串转成字符串列表 print ''.join(ka) #大量的字符串相连,join是最高效的 print '%s%s something % ...

  6. [置顶] Java开源代码研究总结

          由于工作中的需要,最近在研究SNMP协议和利用snmp4j和snmp4j.agent(   http://www.snmp4j.org/ ),实现snmp的南向和北向功能. 结合以前看过的 ...

  7. 方法输出C++输出斐波那契数列的几种方法

    PS:今天上午,非常郁闷,有很多简单基础的问题搞得我有些迷茫,哎,代码几天不写就忘.目前又不当COO,还是得用心记代码哦! 定义: 斐波那契数列指的是这样一个数列:0, 1, 1, 2, 3, 5, ...

  8. Ubuntu下JDK+Tomcat+MySql环境的搭建

    主机在阿里云上,所以网络的配置都省了,只剩下软件的安装和配置 1.安装mysql 1.1 apt-get install mysql-server-5.5 安装过程中,有两次提示输入 mysql 的  ...

  9. easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大

    easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大 >>>>>>>>>>> ...

  10. ESP32学习笔记(一) 环境搭建与下载

    ESP32学习笔记(一) 环境搭建与下载 作者:Nevel 博客:nevel.cnblogs.com 转载请保留出处 前几天刚入手了ESP32模块,趁着放假有时间,我们先把ESP32的编译环境搭建好 ...