gpt4 book ai didi

c - 从文件中获取一个字符后的整数

转载 作者:太空宇宙 更新时间:2023-11-04 00:48:18 25 4
gpt4 key购买 nike

我正在尝试像这样读取一个 txt 文件的编号:

input=20
output=10
hidden=5
....

我试过这段代码:

char line[30];
char values[100][20];
int i = 0;
FILE *fp;

fp = fopen("myFile.txt", "r");

if(fp == NULL)
{
printf("cannot open file\n");
return 0;
}
while(fgets(line, sizeof(line), fp) != NULL)
{
sscanf(line, "%[^=]", values[i])
printf("%s\n", values[i]);

i++;
}
fclose(fp);

但我只获得了第一个单词,而没有获得 = 之后的数字。

我明白了

input
output
etc

代替

20
10
5
etc

我怎样才能得到这个号码??

最佳答案

这一行

sscanf(line, "%[^=]", values[i]);

表示“阅读所有内容,但不包括 = 符号到 values[i]”。

如果您对等号之后的数字部分感兴趣,请按如下方式更改调用:

sscanf(line, "%*[^=]=%19s", values[i]);

此格式行的意思是“读取并忽略(因为有星号)直到并包括等号的所有内容。然后将长度最多为 19 个字符的字符串读入 values[i]”。

Demo.

关于c - 从文件中获取一个字符后的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28813763/

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