全新的C(如何编译?)

时间:2009-05-03 18:06:47

标签: c++ c

我想知道在C中编译应该用什么。我对编程一般是全新的,非常感谢对这个过程的全面解释。我在Windows Vista上。

我听说过一种名为“djgpp”的东西,对于Windows来说是免费且有效的。

10 个答案:

答案 0 :(得分:5)

取决于哪个平台,但在Linux,Mac OS X和类似设备(包括Cygwin)上,gcc最常见。

假设我有一个名为myapp.c的脚本:

#import <stdio.h>

int main(){
        printf("Hi!\n");
        return 0;
}

使用gcc从命令行编译它非常简单,只需运行:

gcc myapp.c

..将二进制文件输出为“a.out”(默认文件名)。要运行已编译的应用程序,只需执行..

./a.out
#which outputs: Hi!

或者将它放在$ PATH中的某个位置(例如,/usr/bin~/bin/)并运行a.out

您可以使用-o标志指定输出文件名:

gcc myapp.c -o myapp
./myapp
# output: Hi!

至于更完整的指南,"Learn C for Cocoa"是一本关于C语言的好的,快速的指南,并涵盖了编译。如果您对学习ObjC感兴趣,next part of the guide也很棒。

在Windows上,我建议您查看Visual Studio,特别是Express editions(免费)。

没有“Visual C”,但Visual C ++版本将编译C代码(因为C ++是C的扩展)。在构建选项中的某处还可以选择“编译为C代码”。

最后,The C Programming Language书籍涵盖了所有内容。

答案 1 :(得分:5)

对于这个问题的答案以及许多其他人,当你开始时,请尝试[本网站] [1],它有初学者教程。 [这是关于编译器和设置的页面] [2]。您可以使用哪些编译器的摘录:

<强>窗/ DOS

  • Code :: Blocks and MINGW
  • Borland公司
  • DJGPP
  • Dev-C ++和数字火星

仅限Windows

  • Microsoft Visual C ++
  • 尼克斯
  • g ++是大多数* nix发行版附带的C ++编译器。
  • gcc是一个带有大多数* nix发行版的C编译器。

<强>苹果 - XCode


Personally, I'd also recommend you strongly to read [The C Programming Language by Kernighan and Ritchie.][3] It will really help you understand both core principles of programming as well as C-specific details.



  [1]: http://www.cprogramming.com/tutorial/c/lesson1.html
  [2]: http://www.cprogramming.com/compilers.html
  [3]: http://www.amazon.com/C-Programming-Language-2nd-Ed/dp/0131103709/ref=ed_oe_h

答案 2 :(得分:5)

Visual Studio Express是Microsoft领先的Windows IDE的免费版本,它包含一个C开发环境(编辑器,编译器,调试器)。

答案 3 :(得分:3)

如果你计划在任何延长的时间内做C,我建议使用gcc并熟悉命令行。 * nixes可能内置了它,在Windows上你可以安装MingW GCC并以同样的方式使用它。

我觉得这很有用,因为我觉得C是与Unix一起设计的,所以最好坚持使用命令行,而不是使用IDE。大多数教程可能会假设您正在使用gcc。另外,如果您只是使用gcc学习C,只需键入gcc -o outputfile sourcefile.c,而如果您从IDE开始,则必须弄清楚IDE的工作原理。

在学习方面,肯定会选择Kernighan和Ritchie的“C编程语言”,因为它是关于C的权威书籍。相当纤薄,易读。

只是注意,gcc的另一个有用的编译器标志是-g,如gcc -o output -g -Wall sourcefile.c中所示。 -g启用调试符号,这将在您希望开始使用gdb进行调试时非常有用。这是你应该从gcc而不是IDE开始的另一个原因,它使得更容易转移到gdb。

你总是可以使用MS Visual C ++,但我认为这对初学者来说太复杂了。我个人推荐Notepad++进行编辑,因为它对你没有太多帮助,但它很好地格式化了代码。当然,一旦你变得更有经验,你可能想要进入一个完整的IDE项目管理等(或者更好,emacs;))但是当你刚刚开始时更简单可能更好

答案 4 :(得分:2)

如果您使用的是Unix(例如Linux,Mac OS X,FreeBSD,Cygwin下的Windows等),我建议使用the GNU Compiler Collection(gcc)。要编译文件hello.c,请在命令提示符处运行:

gcc hello.c

这会将hello.c编译为可执行文件a.out。如果你想要一个名字更好的可执行文件,试试这个:

gcc -o hello hello.c

这会将hello.c编译为可执行文件hello。一些更有帮助的标志:

gcc -Wall -Wextra -o hello hello.c

这会启用许多有用的警告,这些警告可能会帮助您捕获代码中的错误。

在Windows上,很多人使用Microsoft Visual C ++,但我没有使用Windows的实际经验。正如我在上面引用的那样,您可以安装Cygwin,然后使用上面的步骤,但许多人更喜欢纯Windows编译。此外,MinGW是gcc的本机Windows端口。不过,这只是一个偏好问题。

答案 5 :(得分:2)

欢迎编程!

您可能希望从正确的轨道开始,并在您的包装盒中安装Linux的副本。试试Ubuntu因为它易于安装和学习

接下来学习使用控制台!它将在未来几年帮助你。

安装ubuntu后,只需在控制台中输入

即可安装C编译器和基本库
sudo apt-get install gcc build-essential

然后只需创建一个C文件并运行

gcc myprogram.c -o myprogram

这将生成一个名为yourprogram的exec文件,使用

运行它
./myprogram

以下是一些有用的链接:

答案 6 :(得分:2)

我建议下载Microsoft Visual C ++ Express Edition。 http://www.microsoft.com/express/vc/ DJGPP将作为编译器工作,但不提供编辑器或编码环境。编译代码涉及到命令行。有些人建议使用gcc或MinGW,但这两个程序的行为与DJGPP类似。使用单独的编辑器并从命令行编译代码实际上并不是软件通常在Windows环境中编写的方式。 Visual C ++将允许您编写和编译C或C ++代码。

Microsoft Visual C ++是一个免费的开发环境,包括编辑器和编译器。只需下载安装程序可执行文件并运行即可安装。安装程序将从Internet下载必要的软件并将其安装在您的计算机上。安装程序将下载大约200MB的软件,因此根据您的连接速度下载可能需要一个小时。

安装Visual C ++后,启动一个新项目并编写代码。然后,您可以从Visual C ++内部编译和构建它,并查看输出。首先编写一个简单的命令行程序,然后编写更多有趣的程序。

答案 7 :(得分:1)

Ok Josiah,首先,确保在您的系统上安装了C编译器。在Linux,Mac上,有一个开箱即用的编译器,称为GCC编译器。在Windows上,您需要安装一个,我建议您安装一个IDE(如devshed),其中包括编辑器,编译器,调试器......以及开发C / C ++应用程序所需的全部内容。

为了通过Linux / Mac进行编译,首先你需要一个源文件(带有你的代码的文本文件)并用.c或.cpp扩展名保存。然后打开终端并输入:

gcc <fileName.c>

您应该用您的文件名替换<fileName.c>(完整路径,或者首先转到文件位置,然后输入文件名)。

这将在源文件的相同路径中创建一个.o文件(和目标文件),这是您计算机的可执行文件!

在Windows上,如果您已经安装了IDE,则更容易,只需单击编译按钮就可以了!

我希望这对你有所帮助

答案 8 :(得分:1)

对于Windows,您现在可以使用上面提到的gcc,也可以使用MSC。您可以使用Visual Studio Express

Visual C++ Express捆绑包免费获取编译器

答案 9 :(得分:1)

对于小型应用程序调用编译器是很好的,因为你已经习惯了C语法,但随着你的移动,你会发现输入无数选项变得乏味,你会想要使用构建工具。 make是一种基本但功能强大的方法,可以轻松地编译项目。手动编辑makefile可能很乏味,并且会妨碍你的学习,所以我建议跳过它并转到autotools工具链。