求大神指点:C++里头fgets()到底是怎么用的???

马上要急疯了!不要说fgets()和scanf()和gets()的区别,就只要fgets()的具体用法!别复制!网上教程十有八九都看过了,最好能纯原创!还有麻烦说明一下f... 马上要急疯了!不要说fgets()和scanf()和gets()的区别,就只要fgets()的具体用法!别复制!网上教程十有八九都看过了,最好能纯原创!还有麻烦说明一下fgets()三个参数到底是说明什么东西!越详细越好,满意增加悬赏! 展开
 我来答
丿艾瑞灬莉娅
2018-07-31 · TA获得超过916个赞
知道小有建树答主
回答量:926
采纳率:78%
帮助的人:425万
展开全部

单说读入字符串,scanf和gets只可以从键盘读入,而fgets可以通过第三个参数控制从键盘读入或者文件(如.txt,.dat,.inf)读入

fgets(char *str, int len, FILE *stream)

第一个参数是字符串数组,第二个是可以读入到字符串中字符的最大个数,第三个是文件流,若为stdin则从键盘读入,若是FILE*指针则从文件中读取

#include <cstdio>

int main()
{
    char str[32];
    fgets(str, 10, stdin);
    
    printf(str);
    //    读入123456789回车 
    //    输出123456789换行
    
    //    读入1234567890回车
    //    输出123456789
     
    return 0;
}
#include <cstdio>
#include <cstring>

int main()
{
    char str[128];
    FILE *fp = fopen("./a.txt", "r");
    
    //    逐行读入本地文件 a.txt 的内容并输出 
    while( !feof(fp) )
    {
        memset(str, 0, sizeof(str));
        fgets(str, sizeof(str)-1, fp);
        puts(str);
    }
    
    return 0;
}
灵德
2024-11-19 广告
由化工方面的博士、教授和企业的高级技术人员与管理人员创建的高科技化工企业。主要从事下列产品的开发、生产和相关的技术服务:▼高纯电子化学品(主要为高纯季铵碱 )▼季铵碱系列▼季铵盐系列▼季膦化合物系列▼相转移催化剂(PTC)▼均苯四甲酸 (P... 点击进入详情页
本回答由灵德提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式