输入输出函数_1
来源:互联网 发布:淘宝hd降级 编辑:程序博客网 时间:2024/06/06 01:45
perror函数
其原型为void perror(char const *) ,该原型定义在stdio.h中(const与函数类型调换顺序其效果相同)。
关于其作用,下面举例说明
例1:
# include <stdio.h>int main(void) {perror("aaa"); FILE *fp ; fp = fopen( "a.txt", "r+" );if ( NULL == fp ) {perror("a.txt"); } return 0;}当a.txt文件存在时,输出结果为:
当a.txt文件不存在是,输出结果为:
即显示没有这个文件或目录
由上结果,给出这个函数的用法:
如果message不是NULL并且指向一个非空的字符串,perror函数就打印出这个字符串并且在其后打印出: No error
如果有误,比如像上面的情况,当a.txt文件存在时,没有结果输出,当它不存在时,输出字符串并在其后加上一个冒号和一个空格,并给出错误的原因
exit函数
其原型为void exit (int status),该原型定义在stdlib.h中。
例2:
# include <stdio.h># include <stdlib.h>int main(void) {int t;printf("请输入一个数字:\n");scanf("%d", &t);switch(t) {case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:printf("输入的是数字!\n");break;default :printf("输入的不是数字!\n");exit(0); }printf("污染很严重!\n"); return 0;}输出结果
如果输入的是数字,则:
如果输入的不是数字,则:
由结果可以发现,如果输入不是数字,则执行exit函数后,程序直接结束,下面的printf语句不会执行,exit函数的作用为一被执行就退出程序。
对于C语言而言,所有的I/O操作只是简单的移进或移除字节的事情,这种字节流便被称为流。
绝大多数的流都是完全缓冲的,即“读”和“写”实际上是在缓冲区来回的复制数据
fflush函数
其函数原型为int fflush(FILE * stream); ,定义在stdio.h中。
如果给出的文件流是一个输出流,那么fflush()把输出到缓冲区的内容写入文件. 如果给出的文件流是输入类型的,那么fflush()会清除输入缓冲区。
getchar函数
其原型为int getchar(void); ,存在于stdio.h中
例3:
# include <stdio.h>int main(void) {char c;c = getchar();printf("%c\n", c);int i, j;char ch;scanf("%d",&i);printf("i = %d\n",i);while ( (ch=getchar()) != '\n')//把用户前边的非法输入消除 continue; scanf("%d",&j);printf("j = %d\n",j);return 0;}示例输出结果为:
由上结果可知,getchar的基本用法是输入单个字符,另外,也可以用作消除非法输入,如上将数字后面的字母等非数字消除,还可以用作暂停功能等
putchar函数
其原型为int putchar(int ch); ,存在于stdio.h中。
例4:
# include <stdio.h># define N 5int main(void) {char c[N];printf("请输入%d个字符:", N);for (int i=0; i<N; i++) {c[i] = getchar();}for (int i=0; i<N; i++) {putchar(c[i]);}printf("\n");return 0;}输出结果为:
由上结果可知,putchar的用法为输出单个字符
gets函数
其原型为char * gets(char * str); ,存在于stdio.h中。
puts函数
其原型为int put(char * str); ,存在于stdio.h中
例5:
# include <stdio.h># define N 10int main(void) {char c[N];gets(c);puts(c);return 0;}
示例输出结果为:
由上可知,这两个函数分别是输入字符串和输出字符串。另外,gets()的返回值是读入的字符串,如果错误返回NULL,puts() 成功时返回非负值, 失败时返回EOF
putc函数
其原型为int putc( int ch, FILE *stream ); ,存在于stdio.h中。
getc函数
其原型为int getc( FILE *stream ); ,存在于stdio.h中
putc()函数把字符ch写到stream(流)中. 返回值是写入的字符, 发生错误时返回EOF。
getc()函数从stream(流)获取并返回下一个字符,如果到达文件尾返回EOF。
例6:
# include <stdio.h># define N 10int main(void) { char ch; FILE * f; f = fopen( "未命名1.cpp", "r" ); ch = getc(f); while( ch != EOF ) { printf("%c", ch); ch = getc(f); } return 0;}输出结果为:
【所有代码均在windows系统下c-free下运行通过】
(如有错误,敬请指正)
- 输入输出函数_1
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 输入输出函数
- 常见js函数_1
- 关于getchar()函数_1
- 关于函数_1
- 字符串函数_1
- php一些函数详解_1
- Python 生成器函数_1 (yield)
- 文本输入输出处理函数
- poj 2356 暴力或者组合数学
- AsyncDisplayKit教程
- 总结条款:11在operator=中处理“自我赋值”
- OpenGl多重纹理的计算
- ios的runtime
- 输入输出函数_1
- 《Who moved my cheese?》笔记
- Git 错误集锦(ing...)
- EM简单实现
- static、final、this、super的使用
- Linux-0.11内核源码分析系列:关于线性地址,逻辑地址,物理地址的关系与区别
- python3.x学习小记
- 静态库和动态库
- 深入浅出linux-计算机的组成(4)