【问题标题】:Read 2D array from file in C从C文件中读取二维数组
【发布时间】:2016-10-01 12:48:00
【问题描述】:

我知道这已经被回答和问过,但我不太明白那些帖子中给出的答案,所以我觉得我别无选择,只能自己问。这绝对是一个初学者的问题,所以请耐心等待,除非绝对需要,否则不要过于复杂。

我想做的是从.txt文件中读取一个2x3的矩阵,比如

12 14 15
24 244 988

然后将其存储在一个二维数组中,我们称它为“数组”,这样数组[0][0] = 12,数组[1][1] = 244 等等。

到目前为止,我想出的只是这样的:

for (int a = 0; a < 2; a++) {
        for (int b = 0; b < 3; b++) {
                fscanf_s(stream, "%d", array[a][b]);
        }

}

它编译,但随后崩溃,所以我不确定到底出了什么问题。如果我删除该 fscan_s 语句,它既可以编译又可以完美运行,因此问题必须存在。

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • fscanf_s(stream, "%d", array[a][b]); 你忘了&amp; --> fscanf_s(stream, "%d", &amp;array[a][b]);
  • 像这样尝试 &array[a][b]
  • 哇,就是这么简单...非常感谢!将其发布为答案,以便我接受! ;)

标签: c arrays file matrix


【解决方案1】:

它编译,但随后崩溃

你应该使用scanf中的数组地址 喜欢

     fscanf_s(stream, "%d", &array[a][b]);

【讨论】:

    猜你喜欢
    • 2016-01-05
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 2017-08-23
    • 2016-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多