C HelloWorld exec格式错误

C HelloWorld exec格式错误,c,macos,clang,C,Macos,Clang,我正在尝试用C语言编译和运行我的第一段代码 我用过: HelloC.h #include<stdio.h> // added int to prevent warning int main() { printf("Hello World"); } …和(相同,但将gcc替换为clang) 问题:在这两种情况下/HelloC都返回exec格式错误:./HelloC 我的设置 OSX:10.12.4 叮当声——版本 gcc——版本 归功于@ScottHu

我正在尝试用C语言编译和运行我的第一段代码

我用过:

HelloC.h

#include<stdio.h>

// added int to prevent warning
int main()
{
    printf("Hello World");

}
…和(相同,但将
gcc
替换为
clang

问题:在这两种情况下
/HelloC
都返回
exec格式错误:./HelloC

我的设置 OSX:10.12.4

叮当声——版本

gcc——版本


归功于@ScottHunter和@Siguza


我需要使用.c而不是.h作为文件扩展名。

为什么您的代码在
.h
文件中?您是如何决定使用
chmod
的?这不是您链接到的说明的一部分。1)代码应该驻留在.c文件中,而不是.h文件中。2) 不带参数的函数应类似于
func\u name(void)
,以避免使用任意数量的参数调用。3) 实际上,您应该
main
返回一些内容。4) 您的编译器应该使输出文件自动可执行-如果您必须使用
chmod
,这是一个坏兆头。@Siguza:a
返回0main
末尾的code>是不必要的。这与gcc无关。阅读消息,仅仅因为您使用命令
gcc
并不意味着它是gcc。(这种愚蠢的混乱归咎于苹果公司!)
gcc -Wall HelloC.h -o HelloC
chmod +x HelloC
Apple LLVM version 8.1.0 (clang-802.0.42)
Target: x86_64-apple-darwin16.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 8.1.0 (clang-802.0.42)
Target: x86_64-apple-darwin16.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin