初学者:int main()之前的语法错误

我正在尝试运行Hello World程序,但我收到错误

./ex1.c: line 3: syntax error near unexpected token `(` ./ex1.c: line 3: `int main (int argc, char *argv[])' 

要么

 ./ex1.c: 3: ./ex1.c: Syntax error: "(" unexpected 

要么

 ./ex1.c:3: unknown file attribute: i ./ex1.c:4: parse error near `}' 

奇怪的是我以前运行过同样的程序而没有任何问题。

不确定这些问题是否相关,但问题发生在我安装Valgrind在Learn C The Hard Way中运行练习4之后。 我收到一个错误,说我使用chmod +x修复了权限。 然后我所有的.c文件都需要他们之前没有的权限。 然后我用chmod -R 0777为我的所有.c练习文件做了目录。 因此权限问题已得到修复,但随后出现上述错误。 他们可能完全无关,但想包括以防万一。

您不能仅使用./ex1.c 运行 .c文件; 你必须先将它编译成一个可运行的程序。

假设你有一台Linux / OS X机器,使用gcc -Wall ex1.c -o ex1来编译它(或者更简单地说,生成make ex1 )。 然后你可以./ex1来运行程序。

在使用make“your program name”编译程序之后(在本例中为make mario),然后使用./“你的程序名”(本例./mario)。 运行程序时不要添加.c。