使用XCode用K& R学习C,但是得到太多错误

时间:2010-02-11 03:13:29

标签: c xcode

我想使用XCode学习使用K& R进行C编程,但我甚至无法让Hello World正常工作 - 它给了我错误它不应该,我猜因为它正在技术性很强。我可以让XCode放宽要求吗?非常感谢一些建议!感谢。

6 个答案:

答案 0 :(得分:3)

Xcode Bah!只需从命令行编译:

gcc myfile.c -o myfile

答案 1 :(得分:3)

你不需要Xcode,但如果你想... Xcode内置了hello world。制作一个新项目“Command Line Utility”,“Standard Tool”,给它一个名字,看看“来源“,你会看到Hello World计划:

#include <stdio.h>

int main (int argc, const char * argv[]) {
    // insert code here...
    printf("Hello, World!\n");
    return 0;
}

单击“构建并运行”,它会显示:

Running…
Hello, World!

Debugger stopped.
Program exited with status value:0.

答案 2 :(得分:3)

我同意上面的ergosys。 Xcode实际上是为Objective-C编码而制作的,甚至它的“命令行实用程序”模板也是纯属矫枉过正。 K&amp; R中的任何内容都可以用

完美编译
gcc -Wall filename.c

除了一些更高级的东西。 K&amp; R不会进行广泛的对象编译或链接,因为它只是为了教你语言。尽管掌握编译,学习C会容易得多。我更喜欢使用Makefile或gcc / g ++而不是像Xcode或Eclipse那样的IDE。

答案 3 :(得分:1)

我会假设XCode要求安西标准C,而你正在使用早期版本的K&amp; R书籍,仍然使用旧式。

除非你这样做,否则你可以解释一些古老的C代码,不要打扰旧的风格。使用Ansi标准语法。

答案 4 :(得分:1)

老实说,如果使用K&amp; R,XCode比你需要的更多。 K&amp; R是关于基础的,XCode是关于让你拉头发的。

我实际上更喜欢在Mac上使用命令行而不是IDE。

至少对于K&amp; R来说,使用命令行是您想要的方式。尝试:

gcc -o outputfile code.c

如果您想进入iPhone / iPod或Cocoa应用程序,请使用Xcode。但是比大多数情况下,XCode有点过分,可能会让你失望。

答案 5 :(得分:0)

正如我在评论中所说,你不应该看到来自K&amp; R的 hello world 程序的Xcode错误。您可能会看到一些警告,或者您输入了错误的内容。请记住选择正确的编译语言(当然,你想要C)。

  

我可以让XCode放宽要求吗?

通常,您希望编译器能够警告您认为不正确的事情。在某些情况下,警告是无害的,可以关闭,但在大多数情况下,警告会暴露您的程序问题。我喜欢编译我的代码,例如启用了最大警告,因为它可以节省我很多时间。

如果您收到错误,请在此处发布(复制粘贴)您的代码。

最后,看看errata page for K&R。它有一些错误修复或更正,但没有 hello world

(可能是你正在使用本书的第一版,在这种情况下你不应该使用那本书来学习C.)