我正试图加载一个制表符和或空格分隔的文本文件到一个二维数组。该文件看起来是这样的:将文本文件加载为多维数组?
1 -3 4
4 -3 7
8 -1 10
我已经获得了一段代码,表明它是允许做一些事情,如下列:
int nums[][] = {
#include "matrix.txt"
};
但是,每当我尝试编译此代码我得到错误:
$ gcc hangserver.c
hangserver.c:10:5: error: array type has incomplete element type
In file included from hangserver.c:11:0:
matrix.txt:1:5: error: expected ‘}’ before numeric constant
$
我知道有优雅的少的方式来加载此文件到一个数组,但出于纯好奇,我想知道是否有可能implemen上面显示的方法。非常感谢您花时间回答我的问题。
'int nums [] []'无效。你可以拥有的最大灵活性是'int nums [] []'。 –
alk
如果您确定不需要在运行时读取文件,并且文件的内容格式正确,您应该可以这样做(不要尝试以_clever_方式解决任务)... –
'# include指令只是在编译时将引用的文件放入该源文件中。你可以将'matrix.txt'的内容剪切+粘贴到'hangserver.c'中,并从那里找出语法错误。 – Bert