C - 从文本文件中填充结构

时间:2011-08-10 08:30:50

标签: c structure

我有一个文本文件,里面填写了一些我想阅读的数字。

我的文本文件如下所示。

1  2  3  5  0

2  5  8  5  0

7  8  6  9  0

我想将此文本文件读入此结构:

struct numbers num[]

我的结构定义如下:

struct numbers {
       int totalnumbers;
};

第一次进入结构:

1  2  3  5  0

第二次:

2  5  8  5  0

依此类推文件的结尾。

非常感谢您的任何帮助。

3 个答案:

答案 0 :(得分:4)

我的建议是指您的课程笔记/课本并开始编写代码 老实说,你可以从这里的答案中完成一个完整的程序。

  • 首先编写程序打开文件并编写第一行 在文件中的控制台(提示 fopenfgets ... 我认为,已经有一段时间了。
  • 然后放入一个循环,将每一行写入控制台。
  • 然后弄清楚如何将线分成单独的数字(提示 strtok
  • 然后弄清楚如何转换文件中的数字(这些是 字符串)到整数(提示更喜欢strtol而不是atoi
  • 然后声明一个数组并将数字粘贴到其中。

编程就是关于鸿沟的一切。征服,这实际上只是一次解决一些小问题,直到大问题得到解决。

希望这有帮助。

答案 1 :(得分:0)

你可以使用strtok(输入,“\ n”),然后使用atoi()将你得到的字符串转换为数字

答案 2 :(得分:0)

您可以对要读取的每个值使用scanf(“%i”,)。 它有点危险,因为它很容易崩溃程序,因为很难找出文件中有多少记录(如果文件中的第一个值告诉你有意义内容的行数,可以避免后一个问题)

另一种可能性是使用fgets()(而不是gets())读取一行,并使用strtok()或解析该行的自定义循环对其进行标记(不推荐,写入很麻烦,生成意大利面条代码并容易受到错误的影响。)