gpt4 book ai didi

c - 从文件中读取字符串和整数

转载 作者:行者123 更新时间:2023-11-30 15:19:01 25 4
gpt4 key购买 nike

我正在读取一个文本文件,其中某些行以星号开头,然后其他行包含指示矩形大小的数字。我对如何提取这些信息感到非常困惑。我最初尝试使用 fgets() 读取字符串,然后使用 sscanf 读取整数,如图所示;

   while(fgets(line, MAX_CHARS, infile) != NULL) {
if(line[0] == '*') {
printf("%s\n", line);
}
sscanf(line, "%d%d", &height, &width);
printf("height: %d, width: %d\n", height, width);
}

但它的打印是这样的;

*案例#1

高度:0,宽度:0

高度:10,宽度:20

...

*情况#2:形状

高度:10,宽度:20

高度:7,宽度:7

...

我应该逐个字符地读取此文件吗?

示例输入:(高度和宽度不会立即更新)

 *Case #1
10 20



X
X
XXX




*Case #2: Shape
7 7


XX
XX
X

最佳答案

您忘记在 if 之后添加 else 部分。

while(fgets(line, MAX_CHARS, infile) != NULL) {
if(line[0] == '*') {
printf("%s\n", line);
}
// Missing piece
else {
sscanf(line, "%d%d", &height, &width);
printf("height: %d, width: %d\n", height, width);
}
}

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

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