文件与键盘输入与输出
2013-07-22 09:54
134 查看
之前关于getchar的使用有个误区。getchar是一句输入结束后,挨个挨个读取的。
getchar用法
int getchar(void),从标准输入中一次读取一个字符。可以从键盘读入,也可以从文件读入。
从文件读入的方法:
注意while((c=getchar())!=0),c=getchar()两边要再加括号。判断的是c的值,c从getchar读入后的值。一开始总以为c=getchar()会返回个1什么的。
gets()从标准输入中一次读入一句。可以键盘读入,可以文件读入。
从文件读入方法:
putchar也可以从文件输出
关键应该是输入输出流的重定向:
重定向以后用printf语句也会从文件输出。
fopen与freopen的区别在于fopen可以配合fclose使用,灵活关闭打开文件。使用freopen所以输入输出语句都是在文件中操作,使用fopen可以结合键盘输入,文件输入。
使用fopen从文件读入字符要用fgetc(),如
getchar用法
int getchar(void),从标准输入中一次读取一个字符。可以从键盘读入,也可以从文件读入。
从文件读入的方法:
#include<stdio.h> FILE *fp; void main(){ char c; fp=freopen("test.txt","r",stdin); while((c=getchar())!=EOF){ putchar(c); } }
注意while((c=getchar())!=0),c=getchar()两边要再加括号。判断的是c的值,c从getchar读入后的值。一开始总以为c=getchar()会返回个1什么的。
gets()从标准输入中一次读入一句。可以键盘读入,可以文件读入。
从文件读入方法:
#include<stdio.h> #include<string.h> FILE *fp; void main(){ char getstr[128]; char tmpstr[128]; char matchstr[128]; fp=freopen("test.txt","r",stdin); while(gets(getstr)){ if(strcmp(getstr,tmpstr)==0){ if(strcmp(getstr,matchstr)!=0){ printf("%s\n",getstr); strcpy(matchstr,getstr); } } strcpy(tmpstr,getstr); } }
putchar也可以从文件输出
#include<stdio.h> FILE *fp; FILE *sp; void main(){ char c; fp=freopen("test.txt","r",stdin); sp=freopen("oput.txt","w",stdout); while((c=getchar())!=EOF){ putchar(c); } }
关键应该是输入输出流的重定向:
fp=freopen("test.txt","r",stdin); sp=freopen("oput.txt","w",stdout);
重定向以后用printf语句也会从文件输出。
fopen与freopen的区别在于fopen可以配合fclose使用,灵活关闭打开文件。使用freopen所以输入输出语句都是在文件中操作,使用fopen可以结合键盘输入,文件输入。
使用fopen从文件读入字符要用fgetc(),如
while((c=fgetc(fp))!=EOF){ putchar(c); }
相关文章推荐
- 第13周-项目1-小玩文件-用键盘输入文件名,统计输出类似下面的数据
- 编写程序,从键盘输入各位职工的工资数据,存入磁盘文件Salary.dat中,然后从该文件读出职工的工资数据,并计算输出每位职工的实发工资。实发工资的计算方法如下:实发工资=基本工资+加班工奖金-扣除
- java 从键盘输入一个关键字,在 D:盘查找文件,如果文件名中包含该关键字,则输出这个文件的绝对路径,如果都没有找到,则输出找不到相关信息。
- 从键盘输入4个学生的有关数据,然后把它们保存到磁盘文件中,最后从磁盘文件中读取数据输出到屏幕
- 用文件代替键盘和屏幕作为输入和输出
- 输入文件名及路径创建该文件,并把从键盘输入的内容保存到该文件,最后将该文件的路径、该文件名及文件中的内容输出到屏幕。
- 从键盘多行输入,写入TXT文件并读取输出~只显示第一行,如何解决?(答案见代码)
- 文件IO 从键盘输入(标准输入),标准输出。可以输入汉字..strncmp 比较字符串..BUFSIZ
- java 读取键盘输入到txt文件,统计每个单词出现的次数并输出
- Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法
- 第13周-项目1-小玩文件-用键盘输入文件名,统计输出文件中每个字母、数字字符出现的次数
- C语言:从键盘输入一个字符串,以感叹号!作为结束标志,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件test中保存。
- 嵌入式文件输入/输出函数小结
- 【python】文件的输入和输出
- C++中的文件输入/输出
- _02_从键盘读入用户的输入,格式化输出hello+用户输入的信息
- 文件输入输出中遇到的大端序和小端序问题
- 【python】实例-创建文件并通过键盘输入字符
- 汇编语言(二):从键盘输入十进制数,输出该十进制数的十进制,二进制(B),十六进制(H),八进制(Q)表示
- Python 读取键盘输入字符,多线程操作,文件操作随机处理 开发范例