【问题标题】:Referring to: How to Use LLIST *mylist[N];参考:如何使用LLIST *mylist[N];
【发布时间】:2011-01-08 10:14:31
【问题描述】:

这确实有效

LLIST *mylist[10] = {NULL}; 

但是如果我想这样做我会得到错误:

int x=10; 

LLIST *mylist[x] = {NULL};

x 可以是任何值,我暂时将其设置为 10。 x 将用作计数器。

【问题讨论】:

  • 不应该是 NULL 而不是 {NULL} 吗?
  • 不,{NULL} 是用空值初始化数组的合法方式。
  • 哦,不知道。它也是 C99 的功能吗?

标签: c arrays pointers linked-list


【解决方案1】:

对可变长度数组(您的第二个示例使用)的支持来自 C99 标准,您的编译器可能不支持。

对于 gcc,你应该在编译时传递-std=c99 选项。

【讨论】:

  • 我使用我运行的make文件进行编译
  • 在这种情况下,您应该修改CFLAGS 并添加-std=c99
  • @MRP:然后设置CFLAGS环境变量包括-std=c99
  • 我是使用 c 和编译的新手
  • 这是我的制作文件 CC=gcc CFLAGS=-Wall -g #LIBS=-lreadline -lm OBJS=llist.o myprogram.o INCLUDES=llist.h all: $(OBJS) $( CC) $(CFLAGS) $(OBJS) $(LIBS) -o myprogram .co: $*.h $(INCLUDES) $(CC) $(CFLAGS) -c $*.c clean: rm -f *.o我的程序
猜你喜欢
  • 2011-01-08
  • 2011-01-08
  • 2015-12-09
  • 2023-02-24
  • 1970-01-01
  • 2021-10-16
  • 2015-08-16
  • 2011-12-11
  • 1970-01-01
相关资源
最近更新 更多