sscanf未检测到正确的数字

sscanf未检测到正确的数字,c,project,C,Project,我很难使用sscanf扫描列表中的小时和分钟。下面是列表的一小部分 1704 86 2:30p 5:50p Daily 1711 17 10:40a 2:15p 5 1712 86 3:10p 6:30p 1 1731 48 6:25a 9:30a 156 1732 100 10:15a 1:30p Daily 1733 6 2:15p 3:39p Daily 我已经试过了,但它总是让我犯分段错误。(我把这些信息放到结构中) 这些是我得到的结果 1704 86 2 30 p 0 50 p Da

我很难使用sscanf扫描列表中的小时和分钟。下面是列表的一小部分

1704 86 2:30p 5:50p Daily
1711 17 10:40a 2:15p 5
1712 86 3:10p 6:30p 1
1731 48 6:25a 9:30a 156
1732 100 10:15a 1:30p Daily
1733 6 2:15p 3:39p Daily
我已经试过了,但它总是让我犯分段错误。(我把这些信息放到结构中)

这些是我得到的结果

1704 86 2 30 p 0 50 p Daily
1711 17 10 40 a 0 15 p 5
1712 86 3 10 p 0 30 p 1
1731 48 6 25 a 0 30 a 156
1732 100 10 15 a 0 30 p Daily
1733 6 2 15 p 0 39 p Daily

小错误,这可能是问题所在:

这:

&all_flights_divid[1].flight_number,
应该是:

&all_flights_divid[i].flight_number,
//                 ^
编辑:


此外,您还阅读了两次
到达时间(分钟)
,而根本不阅读
到达时间(小时)
。修复它,它应该是正常的。

小错误,这可能就是问题所在:

这:

&all_flights_divid[1].flight_number,
应该是:

&all_flights_divid[i].flight_number,
//                 ^
编辑:


此外,您还阅读了两次
到达时间(分钟)
,而根本不阅读
到达时间(小时)
。修复它,它应该是正常的。

除了第一个字段外,大多数结果似乎都很好

现在如果你检查你的代码

&all_flights_divid[1]
把它修好

&all_flights_divid[i]

除第一个字段外,大多数结果似乎都很好

现在如果你检查你的代码

&all_flights_divid[1]
把它修好

&all_flights_divid[i]

但现在我得到了一个有线的结果。到达时间仍显示为0。您正在更改问题中的源和输出,这使所有答案无效。如果您仍然有问题,请在原始代码之后添加一个经过编辑的代码。@Learning C:请检查相关行。我真不敢相信你没有看到问题。哦,对不起,伙计们。我不知道。我一整天都在写这段代码,我想我的头脑已经不再那么警觉了。非常感谢你的帮助。但是现在我得到一个有线结果。到达时间仍显示为0。您正在更改问题中的源和输出,这使所有答案无效。如果您仍然有问题,请在原始代码之后添加一个经过编辑的代码。@Learning C:请检查相关行。我真不敢相信你没有看到问题。哦,对不起,伙计们。我不知道。我一整天都在写这段代码,我想我的头脑已经不再那么警觉了。非常感谢你的帮助。