该函数包含在C语言中的stdio.h头文件中,主要功能是从流中读取一个字符,并增加文件指针的位置。8 B2 h4 n! c, V0 d# C
( @5 F' O1 _ h o. G函数原型:int fgetc(FILE *fp);6 x q6 b! b4 p) S I
: {, D/ Q t5 ~! t W( B
函数功能:从流中读取字符,即从fp所指定的文件中取得下一个字符。这里需要注意,在每取完一个字符时fp会自动向下移动一个字节。这样编成时,程序员就不用再对fp控制了。这种功能在许多读写函数中都有体现。8 i) r" c" N, S% K
( ?" }+ s* \3 q! ?9 L& `返回值:返回所得到的字符;若读入错误,返回EOF。 3 U% M$ F9 u4 \" `1 O ; N0 x# o0 R% d下面用一个具体的例子来说明: 6 K/ S; F$ n ~0 ]- V+ |) z; q/ X0 @) w8 ?8 |9 B
#include <stdio.h> ( R9 [* f* O. H4 |& W #include <stdlib.h>- k3 Z# W$ h0 z
4 w+ q* E$ u- {8 _ int main(int argc, char *argv[]) 9 r4 ]. A: D2 H' k {6 p8 P$ }9 \$ t- x3 k3 f1 g
FILE *fp; . y O! l7 G/ k o char ch;( a, s% Y3 t# s- Q+ h/ n
& r O- T9 J# v- {1 B! ` if((fp=fopen("test","r"))==NULL) { 6 ^5 |' w7 p7 f5 u6 f% W9 w printf("Cannot open file.\n"); * q; b; l; Y4 b3 L8 W exit(1); ) Z; k; v1 g" P: c2 U, y }9 r1 |* Z8 M2 e% U& Q8 q
7 {% X7 h5 X- {: }# S; B
while((ch=fgetc(fp)) != EOF) { l. j/ r9 E8 \9 k9 D6 B( l- O
printf("%c", ch); # S$ }" F+ M) A7 I# S } ) c y0 ^/ i% @ fclose(fp); & s% F* j0 K9 P3 _+ L- {/ O* U# p
return 0; Q0 h, x; z, ?- c( j, R! d$ P: z- K$ f
} " y, ?' _1 b9 Q$ {4 e8 n& W$ G) D2 E# M, C% H6 J
下面给出另外一个例子:8 P/ h$ X! k: J7 g! D* q. y