编译c语言
编译共分为四个阶段:预处理阶段、编译阶段、汇编阶段、链接阶段。
1、预处理阶段:
主要工作是将头文件插入到所写的代码中,生成扩展名为“.i”的文件替换原来的扩展名为“.c”的文件,但是原来的文件仍然保留,只是执行过程中的实际文件发生了改变。(这里所说的替换并不是指原来的文件被删除)
2、汇编阶段:
插入汇编语言程序,将代码翻译成汇编语言。编译器首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,编译器把代码翻译成汇编语言,同时将扩展名为“.i”的文件翻译成扩展名为“.s”的文件。
3、编译阶段:
将汇编语言翻译成机器语言指令,并将指令打包封存成可重定位目标程序的格式,将扩展名为“.s”的文件翻译成扩展名为“.o”的二进制文件。
4、链接阶段:
在示例代码中,改代码文件调用了标准库中printf函数。而printf函数的实际存储位置是一个单独编译的目标文件(编译的结果也是扩展名为“.o”的文件),所以此时主函数调用的时候,需要将该文件(即printf函数所在的编译文件)与hello world文件整合到一起,此时链接器就可以大显神通了,将两个文件合并后生成一个可执行目标文件。
Ⅱ C语言怎么编译呀
在本机上搭建IDE开发环境,在IDE中导入编译器,就可以本地编译了。
把代码在本地写好,编译过之后,运行样例没问题后,再上传的网站上,网站上是有编译器的,你选择之后会自动编译。
Ⅲ c语言是编译型语言吗
当然!
c程序,编译后才能运行
Ⅳ 怎样用c语言编译
C编译的整个过程很复杂,大致可以分为以下四个阶段:
预处理阶段在该阶段主要完成对源代码的预处理工作,主要包括对宏定义指令,头文件包含指令,预定义指令和特殊字符的处理,如对宏定义的替换以及文件头中所包含的文件中预定义代码的替换等,总之这步主要完成一些替换工作,输出是同源文件含义相同但内容不同的文件。
编译、优化阶段编译就是将第一阶段处理得到的文件通过词法语法分析等转换为汇编语言。优化包括对中间代码的优化,如删除公共表达式,循环优化等;和对目标代码的生成进行的优化,如如何充分利用机器的寄存器存放有关变量的值,以减少内存访问次数。
汇编阶段将汇编语言翻译成机器指令。
链接阶段链接阶段的主要工作是将有关的目标文件连接起来,即将在一个文件中引用的符号同该符号在另外一个文件中的定义连接起来,使得所有的目标文件成为一个能够被操作系统装入执行的统一整体。
Ⅳ C语言 选择编译
你的问题是不是写反了。
如果是A.c B.c,包含了同一个.h文件,那你不想编译B.c,直接删除工程的B.c就好了啊,反正都不用。
如果你是问是同一个.h引用了A.c,B.c,那你想选择语句:
#ifdef 宏名称
include “文件”
#endif
Ⅵ 通过GCC编译器编译c语言
打开终端
vim test.c
然后输入你的程序
保存:wq
gcc -o test test.c
如果没有提示错误的话
./test 就可以运行
基本步骤就大致如此 详细的还需要了解下VIM的调试运行的方法 不过内容不多
Ⅶ c语言用什么编译
visual C++ 6.0 ,现在通用的c语言编辑器,可以编译c或者是c++,只是新建源文件时要手动设置文件名为(.c),否则系统将自动添加c++源文件的扩展名(.cpp)。
visual C++ 6.0是visual studio中的一部分,网上也能找到独立的visual C++ 6.0。
visual studio最新版本为visual studio 2010.
Ⅷ 编译C语言
虽然很多大学都用的是TC
但是我很不推荐使用它的
原因就是太老了,对标准支持不好
有的时候会让你一头雾水...
至于VC6.0,对标准支持也不好
也感觉不太好,你还是不要选择上面两个
至于编译器,你可以用VS2005...
如果闲大,可以用Dev-C++
或者gcc g++等,这些都小巧,而且对标准支持也不错
当然,我自己是用VS2008的,现在这个bug也多,其实微软的
vs2005就足够你用了,vs2008的比2005的速度能快点
上面这些都支持对C语言的编译的,你可以自己选择
Ⅸ c语言编译器
编译器无好坏 最流行的就好 ,很多人都用trubo c 2.0.vc6.0这些都是些很老很过时的编译器。用最新的吧,从工程入手。不然学了半年编程,连怎么建立最简单的工程都不会。vs2010,vs2012,vs2008,