当前位置:首页 » 编程软件 » c是如何编译的

c是如何编译的

发布时间: 2022-04-04 23:13:24

c语言怎么编译

在本机上搭建IDE开发环境,在IDE中导入编译器,就可以本地编译了。
把代码在本地写好,编译过之后,运行样例没问题后,再上传的网站上,网站上是有编译器的,你选择之后会自动编译。

⑵ 怎样用c语言编译

C编译的整个过程很复杂,大致可以分为以下四个阶段:

  1. 预处理阶段在该阶段主要完成对源代码的预处理工作,主要包括对宏定义指令,头文件包含指令,预定义指令和特殊字符的处理,如对宏定义的替换以及文件头中所包含的文件中预定义代码的替换等,总之这步主要完成一些替换工作,输出是同源文件含义相同但内容不同的文件。

  2. 编译、优化阶段编译就是将第一阶段处理得到的文件通过词法语法分析等转换为汇编语言。优化包括对中间代码的优化,如删除公共表达式,循环优化等;和对目标代码的生成进行的优化,如如何充分利用机器的寄存器存放有关变量的值,以减少内存访问次数。

  3. 汇编阶段将汇编语言翻译成机器指令。

  4. 链接阶段链接阶段的主要工作是将有关的目标文件连接起来,即将在一个文件中引用的符号同该符号在另外一个文件中的定义连接起来,使得所有的目标文件成为一个能够被操作系统装入执行的统一整体。

⑶ 如何编译C文件

编译C文件用GCC。
编译C文件常用方法:
单个文件:
g++ file.cpp
这是最简单形式,缺省输出为a.out,可以用-o命令指定输出文件,比如g++ file.cpp f.out
多个文件:
g++ -c 1.cpp -o 1.o
g++ -c 2.cpp -o 2.o
g++ 1.o 2.o -o prog.out
链接成可执行文件:
一般用g++ -o file file.cpp
多个文件是g++ -o file file1.cpp file2.cpp ...
编译C++不是用GCC而是G++.
如果用GCC能编译但不能链接.

多个文件:
1.编译多个文件,但不连接:
g++ file1.cpp file2.cpp
会生成两个文件:file1.o, file2.o

2.连接:
g++ -o outFileName file1.o file2.o
会生成一个可执行文件:outFileName。

如果想,一步就完成编译和连接,那么:
g++ -o outFileName file1.cpp file2.cpp

-o选项控制是否连接。

⑷ C语言编译执行的全过程是怎样的

不明白楼主什么意思,就是先把你的代码转为汇编代码,然后转为二进制文件,读入内存执行。

⑸ c编译器是如何编译程序的

每种平台都有自己的C编译器的,例如linux下有 gcc ,windows下有ms vs 系列。c的源程序经过这些编译器,再与各自平台的连接器就可以生成该平台下对应的二进制执行代码了。
但由于C语言很多时候会涉及很多硬件级调用的,这个对平台依赖性极大。所以移植性这种东西,我只能说,哈哈!

⑹ 如何编译C语言源代码

下载一个VC2005软件,把代码复制到里面,设置好C运行环境,点击编译,OK,然后点击那个感叹号,直接链接运行,就OK了。

⑺ C语言如何编译

可以这样做:1、新建C/C++源文件(在文件这里选择新建)2、命名C/C++源文件名,并为它指定保存路径(选择文件中的C/C++source File)(并在右边输入文件名,选择保存位置,点击确定)3、开始录入程序(在空白的工作窗口录入程序)4、编译(点击第一个红框,所有的提示均按确定),运行(红色感叹号)

⑻ C语言编译执行的全过程是怎样的

预处理阶断:这个就是那些#include啥的。
编译阶断:把C语言的代码转成汇编语言代码,比如 int a = 2; 它会生成mov a, 2;
汇编阶断:把汇编代码转换成机器码,比如把mov a , 2 ; 转成 cd07 (mov指令的机器码中的一种机器码)
链接阶断:制作成一个可执行文件,比如windows是PE的可执行文件,linux是elf的可执行文件,要制作成可以运行的程序。

⑼ c语言程序设计如何编译

没有任何编译错误,编译后生成4.exe文件!操作是正确的!

⑽ c多个文件如何编译

关于整个 C 语言中的主函数 main( ) 如何调用相关的头文件(*.h)、以及调用其它独立的模块(*.c)的方法,关键在于对于如何编写 makefile 文件的真正理解、以及真正掌握编写规则。
由于我已经有很多年没有编写过 C 语言源程序、以及编写 makefile 文件了,但是可以大概给你提供一个思路就是:

下面的文本文件假设以 my_makefile 为例,编译环境为 Linux 系统,C 语言编译器为 gcc。
但是在这里注意一点:我的 my_makefile 文件中的注释语句是否是分号进行注释,我已经不太记得了,这个需要自己再参考一下。

另外就是:对源文件(*.c)、以及生成可执行文件(my_runfile)在 my_makefile 文件中的前后次序,我也记不清了,仅供参考。
myprog1.o: myprog1.c ; myprog1.o 的生成依赖于 myprog1.c 这个源程序
gcc -c myprog1.c ; 使用 Linux 系统的 C 语言编译器对 myprog1.c 只编译、不链接
myprog2.o: myprog2.c ; myprog2.o 的生成依赖于 myprog2.c 这个源程序
gcc -c myprog2.c ;使用 Linux 系统的 C 语言编译器对 myprog2.c 只编译、不链接
my_runfile: myprog1.o myprog2.o ; 可执行文件 my_runfile 的生成依赖于 myprog1.o、myprog2.o 这两个目标文件
gcc -o my_runfile myprog1.o myprog2.o ; 使用 cc 的 -o 选项生成用户自定义的可执行文件:my_runfile,如果不指定 -o 选项,cc 编译器生成的缺省可执行文件名为:a.out
运行命令为:
$make -f my_makefile (使用 -f 选项代替缺省的 make 文件名 makefile)

热点内容
阴阳师按键脚本 发布:2024-05-05 12:00:33 浏览:758
魔兽查脚本 发布:2024-05-05 11:54:37 浏览:38
sqlserver执行时间 发布:2024-05-05 11:50:31 浏览:648
终端配置账号该如何改密码 发布:2024-05-05 11:24:37 浏览:825
成都存储研发招聘 发布:2024-05-05 11:24:29 浏览:285
电脑服务器名称怎么查找 发布:2024-05-05 10:49:37 浏览:470
电脑连到代理服务器 发布:2024-05-05 10:40:02 浏览:250
华为安卓手机如何投屏到雷克萨斯 发布:2024-05-05 10:37:50 浏览:211
微博上传原图 发布:2024-05-05 10:20:05 浏览:749
服务器换电脑需要什么东西 发布:2024-05-05 09:52:28 浏览:754