10-getc()和putc()函数
13.2.3 getc()
和 putc()
函数
getc()
和 putc()
函数与 getchar()
和 putchar()
函数类似。所不同的是,要告诉 getc()
和 putc()
函数使用哪一个文件。下面这条语句的意思是“从标准输入中获取一个字符”:
ch = getchar();
然而,下面这条语句的意思是“从 fp
指定的文件中获取一个字符”:
ch = getc(fp);
与此类似,下面语句的意思是“把字符 ch
放入 FILE
指针 fpout
指定的文件中”:
putc(ch, fpout);
在 putc()
函数的参数列表中,第1个参数是待写入的字符,第2个参数是文件指针。
程序清单13.1把 stdout
作为 putc()
的第2个参数。 stdout
作为与标准输出相关联的文件指针,定义在 stdio.h
中,所以 putc(ch, stdout)
与 putchar(ch)
的作用相同。实际上, putchar()
函数一般通过 putc()
来定义。与此类似, getchar()
也通过使用标准输入的 getc()
来定义。
为何该示例不用 putchar()
而要用 putc()
?原因之一是为了介绍 putc()
函数;原因之二是,把 stdout
替换成别的参数,很容易将这段程序改写成文件输出。