我无法理解的C代码编译错误

时间:2015-02-25 22:54:50

标签: c debugging

我写了这段代码:

short foo(short a)
{
short b,c;
b=10;

c = a + b;

return c; 
}

我收到编译错误:

usr/lib/gcc/x86_64-redhat-linux/4.9.2/../../../../lib64/crt1.o: In function `_start':                                                                                                                        
(.text+0x20): undefined reference to `main'                                                                                                                                                                   
collect2: error: ld returned 1 exit status  

我可能在哪里出错?

这里有不确定的吗?我对C编程并不陌生,所以请原谅我对一些显而易见的事情的无知。

1 个答案:

答案 0 :(得分:3)

这不是编译器错误,而是链接器错误。你展示的代码没有破坏,它是不完整的。消息

undefined reference to `main'

告诉您尚未定义main函数,该函数需要作为程序的起点。添加

int main(void) {
  // code here that is supposed to run when the program is executed
}

代码。