现在的位置: 首页 > 综合 > 正文

C语言——第八章

2013年01月24日 ⁄ 综合 ⁄ 共 1153字 ⁄ 字号 评论关闭

这一章没有怎么仔细看,其实也很简单,记住格式就行了。等不会的时候可以翻书看一下就OK了。

到此为止,谭浩强的这本书已经看完一遍了,找到了10个左右的错误,感觉有点惊讶。后天C语言的圣经就买回来了,到时候再认真看看那本吧(评价极高啊~圣经Orz)!

一.

C语言的标准I/O库中定义了3FILE型指针:stdin(标准输入文件)stdout(标准输出文件)stderr(标准错误文件),他们可被任何程序使用,称为标准文件(standard file)指针,简称标准文件。通常标准文件指针都隐含指向控制台(终端设备),即在终端上进行输入/输出。

二.

1.读打开(r):只能读已经存在的文件,不能写

2.写生成(w):可建立一个新文件写入数据。若文件已经存在,将覆盖已有数据。

3.追加(a):向已有文件末尾写入数据或建立新文件。

4.读/写打开(r+):读或写已经存在的文件

5.读/写生成(w+):读或写新文件

6.读/写追加(a+):可读取或添加数据,或建立新文件。

三.写一个字符到磁盘文件

#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')

fputc(ch, fp);

fclose(fp);

return 0;

}

文件路径为G:\\test.txt,应该是一个\,但是C语言需要转义,所以2\\

fputc函数也有返回值。如果执行此函数成功,就返回被输出的字符,否则就返回EOFEOF是一个符号常量,在stdio.h头文件中被定义为-1

四.统计文件中的单词个数

#include<stdio.h>

#include<stdlib.h>

int main(int argc, char *argv[])

{

FILE *fp;

char ch;

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++;

}

fclose(fp);

printf("文件中有 %d 个单词", count);

return 0;

}

抱歉!评论已关闭.