gpt4 book ai didi

c - fscanf 如何知道这是行尾?

转载 作者:太空宇宙 更新时间:2023-11-04 05:27:14 26 4
gpt4 key购买 nike

如果文件中的字符串是:我从文件中读取字符串:

 "User1 User2 User3 User4 User5"
"test1"

我只想读取文件的第一行,我的代码是:

 if (in_fp != NULL)
{
while (fscanf(in_fp, "%s", &user)!=EOF)
{
temp = (char*)malloc(sizeof user);
strcpy(temp,user);
}
fclose (in_fp);
}

但问题是 fscanf 还从文本文件中读取了“test1”,我需要知道如何让他知道那是行尾,我需要在我的代码中修复什么?我知道 fgets 但我想分别阅读每个用户

最佳答案

一种方式

    if (in_fp != NULL){
while (fscanf(in_fp, "%s%c", user, &ch)==2){
temp = (char*)malloc(sizeof user);
strcpy(temp, user);
//do something
printf("%s\n", user);
free(temp);
if(ch == '\n')
break;
}
fclose (in_fp);
}

关于c - fscanf 如何知道这是行尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20721245/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com