char*fgets(char*str,int n,FILE*stream)
我知道这个函数是如何工作的。我知道char*fgets(char*str,int n,FILE*stream),c,C,我知道这个函数是如何工作的。我知道stdin经常被用作*流。这是一个相当有趣的问题,但是除了stdin,还有什么函数可以用于输入吗?首先,您使用stdin不是作为*stream而是stream,因为stdin被声明为 FILE *stdin; 其次,stdin不是一个函数,而是一个对象——一个指向描述开放流的不透明结构的指针;或者正如名字所说,一个打开的文件stdin的特殊之处在于,在程序中,它默认连接到交互式输入,即使用键盘键入的任何内容 虽然在执行main之前,stdin是一个很容易提供给
stdin
经常被用作*流
。这是一个相当有趣的问题,但是除了stdin
,还有什么函数可以用于输入吗?首先,您使用stdin
不是作为*stream
而是stream
,因为stdin
被声明为
FILE *stdin;
其次,stdin
不是一个函数,而是一个对象——一个指向描述开放流的不透明结构的指针;或者正如名字所说,一个打开的文件stdin
的特殊之处在于,在程序中,它默认连接到交互式输入,即使用键盘键入的任何内容
虽然在执行main
之前,stdin
是一个很容易提供给程序的输入流,但您可以使用fopen
功能打开更多的流:
FILE *a_file = fopen("myinput.txt", "r");
将打开进程当前工作目录中的文件myinput.txt
进行读取,并返回一个指向描述字节流结构的指针;调用fgets(…,一个_文件)代码>现在将从开始读取所述文件的连续行
读取后,必须使用fclose(a_流)关闭流代码>