【发布时间】:2015-02-22 13:45:19
【问题描述】:
我创建了一个简单的程序,它在 c 中使用 INT 的多维数组。
他被设计成一个结构:
typedef struct s_control
{
int rangees;
int **rangees_content;
} t_control;
然后,我 malloc 结构等... 但是,当我尝试编辑这样的案例时:
opt->rangees_content[line] = tmp;
其中“tmp”是“int tmp;”声明的int
然后我编译得到:
./main.c:9:30: 警告:赋值使指针从整数 没有演员表 [默认启用] opt->rangees_content[line] = tmp;
有人有想法吗?
谢谢
【问题讨论】:
-
malloc()rangees_content好吗?并且请定义多维,它只是二维吗? -
rangees_content[line]是一个int*。您不能为其分配int。 -
数组未分配。是的,只有“二维”,抱歉
-
rangees_content[line] 听起来你想分配一整行,所以你应该分配一个 int [],而不是一个 int。
-
根本无法将数组作为一个整体进行分配。您必须使用循环。
标签: c multidimensional-array struct int