C编程: Struct array construction while reading a file

标签 c arrays file struct

我有一个问题,还有一些麻烦。我必须读取包含一些值的文件文本。该文件如下所示:

104 Olympus FE200   244.90
226 JVC MG155   944.20
342 Pentax  OPTIOA20 344
509 Canon   SELPHYES1   299.20
974 Canon   IXUS800IS   444.50
.
.
.

344     Canon   EOS500D   500

不同的字符串之间用“\t”分隔。

我必须编写一个函数来读取所有这些内容并创建一个由以下定义的结构数组:

struct product{
int id;
char constructor[MAX_SIZE];
char product_name[MAX_SIZE];
double price;
};

我实际上可以读取该文件,但是结构和结构选项卡变得越来越困难。有什么想法吗?

最佳答案

使用scanf():

struct product p;
scanf("%d %s %s %lf", &p.id, p.constructor, p.product_name, &p.price);

如果存在空格问题,请按照 @icktoofay 的建议使用 %[^\t\n] 而不是 %s

关于C编程: Struct array construction while reading a file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16887978/

相关文章:

c - execl在forked进程中只执行一次,C编程

javascript - 通过变量索引更新 mongoDB 文档中的数组

从R中的固定宽度文件读取矩阵

c - 错误 : format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=]

c - 如何避免 GCov 对编码风格的限制?

c++ - 如何使用 C++(g++) 编译器编译包含 C++ 关键字的 C 代码?

arrays - 在 Go 中将一个数组 append 到另​​一个数组的最快方法是什么?

c# - 3D 数组到 2D 数组 - 忽略维度

android - 保存用户可以访问的 Flutter Android 应用程序中的文本文件

php - 使用php在另一个目录中创建文件