这一章没有怎么仔细看c;其实也很简单c;记住格式就行了。等不会的时候可以翻书看一下就OK了。
到此为止c;谭浩强的这本书已经看完一遍了c;找到了10个左右的错误c;感觉有点惊讶。后天Cclass="tags" href="/tags/YuYan.html" title=语言>语言的圣经就买回来了c;到时候再认真看看那本吧(评价极高啊~圣经Orz)!
一.
Cclass="tags" href="/tags/YuYan.html" title=语言>语言的标准I/O库中定义了3个FILE型指针:stdin(标准输入文件)、stdout(标准输出文件)和stderr(标准错误文件)c;他们可被任何程序使用c;称为标准文件(standard file)指针c;简称标准文件。通常标准文件指针都隐含指向控制台(终端设备)c;即在终端上进行输入/输出。
二.
1.读打开(r):只能读已经存在的文件c;不能写
2.写生成(w):可建立一个新文件写入数据。若文件已经存在c;将覆盖已有数据。
3.追加(a):向已有文件末尾写入数据或建立新文件。
4.读/写打开(r+):读或写已经存在的文件
5.读/写生成(w+):读或写新文件
6.读/写追加(a+):可读取或添加数据c;或建立新文件。
三.写一个字符到磁盘文件
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
int ch;
if((fp = fopen("G:\\test.txt", "w")) == NULL)
{
printf("error!\n");
exit(1);
}
while((ch = getchar()) != '\n')
return 0;
}
文件路径为G:\\test.txtc;应该是一个\c;但是Cclass="tags" href="/tags/YuYan.html" title=语言>语言需要转义c;所以2个\\。
fputc函数也有返回值。如果执行此函数成功c;就返回被输出的字符c;否则就返回EOF(EOF是一个符号常量c;在stdio.h头文件中被定义为-1)
四.统计文件中的单词个数
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char *argv[])
{
FILE *fp;
int white = 1;
int count = 0;
if((fp = fopen(argv[1], "r")) == NULL) (argv[0]是文件名~~~1开始才是数据)
{
printf("can't open file %s.", argv[1]);
exit(1);
}
while((ch = fgetc(fp)) != EOF)
if(ch == ' ' || ch == '\t' || ch == '\n')
white++;
else
if(white)
{
white = 0;
count++;
}
printf("文件中有 %d 个单词", count);
return 0;
}