无法在C中编译基础教程

Ana*_*ake 1 c gcc osx-lion

我刚开始尝试学习C并且一直在尝试做教程,但是他们不会编译.错误似乎表明我使用64位操作系统(狮子)是一个问题,但我不明白这样一个简单的程序会是怎么回事.

代码:(直接从'thenewboston'教程中复制)

#include <stdio.h>

int main(void)
{
    printf("Hello World");
    getch();
}
Run Code Online (Sandbox Code Playgroud)

然后我在终端输入了这个:

gcc tnb_1.c
Run Code Online (Sandbox Code Playgroud)

而我得到的错误是:

Undefined symbols for architecture x86_64:
  "_getch", referenced from:
      _main in cc2nMvOk.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

我使用的编译器是与xcode一起安装的标准编译器.

我很抱歉,如果这个问题有明显的答案,但由于我无法超越第一道障碍,我发现很难学到任何东西.

谢谢您的帮助

Tro*_*ott 6

getchar()而不是getch(). getch()是非标准的.

使用getchar()will(可能)意味着你需要按Enter而getch()不是,但是如果你想要做的就是编译一个简单的程序来开始用C,那对你来说可能并不重要.