C语言:这个错误是什么意思?

时间:2012-06-15 01:50:42

标签: c

TYPE *a = calloc(nelem, sizeof(TYPE));

它说“无法解析标识符TYPE”。这是什么意思?

这是我们教授给我们的代码。我们需要实现heapsort(在Java中做到了,我知道它是如何工作的,但我是C处女。)

3 个答案:

答案 0 :(得分:4)

使用以下代码进行编译时:

gcc -std=c99 -DRAND -DPRNT -DTYPE={float, double} -D{BUBB, HEAP, INSR, MERG} *.c

您必须选择floatdouble

gcc -std=c99 -DRAND -DPRNT -DTYPE=float -D{BUBB, HEAP, INSR, MERG} *.c
gcc -std=c99 -DRAND -DPRNT -DTYPE=double -D{BUBB, HEAP, INSR, MERG} *.c

同样适用于BUBBHEAPINSRMERG

答案 1 :(得分:2)

将以下定义添加到文件的开头:

#define TYPE int

#define TYPE float

注意TYPE替换应该是数字类型

答案 2 :(得分:0)

编译器无法解析TYPE,它必须是typedef ...你必须在定义它的地方包含headerfile,否则在使用之前定义它。例如typedef int TYPE;