【发布时间】:2017-03-31 02:08:59
【问题描述】:
我需要从 .txt 文件中读取一个整数、一个字符串,然后是未知数量的整数。这应该逐行完成。
.txt 文件示例:
541 Andy 76 55 84 80
841 Kevin 51 37 60 55 71 68
418 Erik 25 85 40
966 Martha 64 82 71 83 55
输出应该是这样的:
ID:541 Name:Andy Values: [76, 55, 84, 80]
ID:841 Name:Kevin Values: [51, 37, 60, 55, 71, 68]
ID:418 Name:Erik Values: [25, 85, 40]
ID:966 Name:Martha Values: [64, 82, 71, 83, 55]
问题是,我不知道一个人有多少值。所以我的代码应该不断将新整数添加到数组中,直到它看到行尾。我必须在之后将这些信息传递给函数这个。所以仅仅将这些打印到屏幕上是不够的。我应该能够访问和使用它们。而且我不能扫描所有的 .txt 文件(所以不能使用 fscanf),因为我需要将它们传递给函数人员按人。
【问题讨论】:
-
使用
malloc()动态分配数组。如果行中有更多数字,请使用realloc()增加其大小。循环执行此操作。 -
@LưuVĩnhPhúc 那里的答案对字数有硬编码限制。不是一个好模仿的设计。
-
@Barmar 您不需要硬编码,只需继续拆分令牌,直到行中没有令牌
-
@LưuVĩnhPhúc 但他需要将所有数字放入一个数组中。
标签: c