QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 741|回复: 3

fgets()的第三个选项是怎么用的?

[复制链接]
发表于 2004-4-5 23:05:56 | 显示全部楼层 |阅读模式
字符串输入函数 fgets(char *c,int size,file *stream)中的第三个选项file * stream 是用来做什么 的  ,有些不明白,还请各位帮帮忙 :neutral:

现在附加一个例子小程序:
/*  这里书里的一个例子  程序是用fgets()函数来输入一个字符串 */

#include<stdio.h>
main(void)
{
char a[80];
char b[]="what is your name?";
char c[]="Hi!";
puts(b);
fgets(a,80,stdin);  /*  就是这里,第三个选项,stdin 是用来做什么 有些不明白  */
puts(c);
puts(a);
}
发表于 2004-4-6 09:09:46 | 显示全部楼层
stdin 标准输入

就像:
scanf("%d",&n); == fscanf(stdin,"%d",&n);
回复

使用道具 举报

 楼主| 发表于 2004-4-6 09:16:09 | 显示全部楼层
多谢谢啦  终于明白太高兴了
回复

使用道具 举报

发表于 2004-4-6 09:18:58 | 显示全部楼层
第三个选项:
file *stream
是指定打开得文件流。
你上面得是stdin流,是标准输入设备,也就是键盘。通过键盘取得字符串。你也可以制定为其他得流文件,例如一个已经打开得文件流。例如下面得代码:
[code:1]
#include <stdio.h>
#include <stdlib.h>
void main(int argc,char *argv[])
{
        FILE *fp;
        char str[128] ;
        if ((fp=fopen(argv[1],"r"))==NULL)
        {
                printf("cannot open file.\n");
                exit (1);
        }

        while (!feof(fp))
        {
                if (fgets(str,126,fp))
                        printf("%s",str) ;
        }
        fclose(fp);
        return 0;
}
[/code:1]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 16:42 , Processed in 0.078917 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表