使用XCode编译C程序

时间:2011-08-09 11:31:20

标签: c xcode

我正在尝试使用在

下面键入的XCode运行一个非常简单的C程序
1)   #include <stdio.h>
2)   int main ()
3)   {
4)     printf("Hello, World!\n");
5)     func();
6)     return 0;
7)   }
8)   void func()
9)   {
10)    printf("xxxx");
11)  }

在第5行,我收到警告“在c99中隐式声明func无效”,在第8行我收到错误“func的冲突类型”

请指教 谢谢,

3 个答案:

答案 0 :(得分:2)

你需要在使用之前声明func();(在main中),否则它被声明为返回int的函数,当编译器到达第8行时,它会看到不同的声明返回void的相同函数。

#include <stdio.h>
void func(void);
int main ()

答案 1 :(得分:1)

那么,错误消息会告诉您究竟出了什么问题。必须首先在相同的源代码单元或头文件中声明正在使用的函数。

如果尚未声明func(),则编译器会假定int结果。

第一个错误说你应该在使用之前声明func()

void func(void);

int main()
{
    etc...    

第二个错误告诉您func()毕竟不会返回int。如果您先声明func(),那么两个错误都不会发生。

答案 2 :(得分:0)

您在声明或定义之前调用了func(),这就是原因。

在主

之前添加void func();