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

c程序如何编译

发布时间: 2024-05-04 22:58:05

1. c语言文件的编译与执行的四个阶段并分别描述

开发C程序有四个步骤:编辑、编译、连接和运行。

任何一个体系结构处理器上都可以使用C语言程序,只要该体系结构处理器有相应的C语言编译器和库,那么C源代码就可以编译并连接到目标二进制文件上运行。

1、预处理:导入源程序并保存(C文件)。

2、编译:将源程序转换为目标文件(Obj文件)。

3、链接:将目标文件生成为可执行文件(EXE文件)。

4、运行:执行,获取运行结果的EXE文件。

(1)c程序如何编译扩展阅读:

将C语言代码分为程序的几个阶段:

1、首先,源代码文件测试。以及相关的头文件,比如stdio。H、由预处理器CPP预处理为.I文件。预编译的。文件不包含任何宏定义,因为所有宏都已展开,并且包含的文件已插入。我归档。

2、编译过程是对预处理文件进行词法分析、语法分析、语义分析和优化,生成相应的汇编代码文件。这个过程往往是整个程序的核心部分,也是最复杂的部分之一。

3、汇编程序不直接输出可执行文件,而是输出目标文件。汇编程序可以调用LD来生成可以运行的可执行程序。也就是说,您需要链接大量的文件才能获得“a.out”,即最终的可执行文件。

4、在链接过程中,需要重新调整其他目标文件中定义的函数调用指令,而其他目标文件中定义的变量也存在同样的问题。

2. c语言的编译过程是什么

c语言的编译过程如下:
1、预处理:预处理过程实际上是处理“#”的过程:#include包含的头文件直接拷贝到hello.c中;#define定义的宏定义进行替换,同时删除代码中没有的注释部分。2、编译:编译的过程实质上是将高级语言翻译成机器语言的过程。3、汇编:汇编器是将汇编代码转变成机器可以执行的命令,每一个汇编语句几乎都对应一条机器指令。汇编相对于编译过程比较简单,根据汇编指令和机器指令的对照表一一翻译即可。4、链接:就像hello.c中使用到了C标准库的东西“printf”,但是编译过程只是将源文件翻译成二进制文件而已,这个二进制文件还不能直接执行,还需要一个动作:将翻译成的二进制文件与需要用到的库绑定在一块。
补充:编译过程可分为6步:扫描(词法分析)、语法分析、语义分析、源代码优化、代码生成、目标代码优化。

3. 濡备綍鐢╟璇瑷缂栬疟镓ц屼竴娈电▼搴忥纻

public static void main(Strign []args){

int x=2,y=4,z=3;

System.out.println(x>y&&z>y);

}

镓╁𪾢璧勬枡

缂栬疟鏂瑰纺涓嬶纴棣栧厛阃氲繃涓涓瀵瑰簲浜庢墍鐢ㄧ▼搴忚捐¤瑷镄勭紪璇戠▼搴忓规簮绋嫔簭杩涜屽勭悊锛岀粡杩囧规簮绋嫔簭镄勮瘝娉曞垎鏋愩佽娉曞垎鏋愩佽镒忓垎鏋愩佷唬镰佺敓鎴愬拰浠g爜浼桦寲绛夐桩娈靛皢镓澶勭悊镄勬簮绋嫔簭杞鎹涓虹敤浜岃繘鍒朵唬镰佽〃绀虹殑鐩镙囩▼搴忥纴

铹跺悗阃氲繃杩炴帴绋嫔簭澶勭悊灏嗙▼搴忎腑镓鐢ㄧ殑鍑芥暟璋幂敤銆佺郴缁熷姛鑳借皟鐢ㄧ瓑宓屽叆鍒扮洰镙囩▼搴忎腑锛屾瀯鎴愪竴涓鍙浠ヨ繛缁镓ц岀殑浜岃繘鍒舵墽琛屾枃浠躲傝皟鐢ㄨ繖涓镓ц屾枃浠跺氨鍙浠ュ疄鐜扮▼搴忓憳鍦ㄥ瑰簲婧愮▼搴忔枃浠朵腑镓鎸囧畾镄勭浉搴斿姛鑳姐

4. 涓婃満杩愯屼竴涓猚绋嫔簭镄4涓姝ラ

涓婃満杩愯屼竴涓狢绋嫔簭镄勬ラや富瑕佸寘𨰾浠ヤ笅鍑犱釜锛


1. 缂栧啓浠g爜锛氶栧厛锛屼綘闇瑕佺紪鍐机绋嫔簭銆备綘鍙浠ヤ娇鐢ㄤ换浣曟枃链缂栬緫鍣锛屽傝颁簨链锛孲ublime Text锛屾垨钥呮洿涓扑笟镄勯泦鎴愬紑鍙戠幆澧冿纸IDE锛夛纴濡俈isual Studio Code锛孍clipse绛夈备綘鍙闇瑕佹寜镦C璇瑷镄勮娉曡勫垯缂栧啓浠g爜鍗冲彲銆


2. 淇濆瓨浠g爜锛氩綋浣犲畬鎴愪唬镰佺紪鍐椤悗锛屼綘闇瑕佸皢鍏朵缭瀛树负涓涓.c鏂囦欢銆傜‘淇濇枃浠跺悕涓庣▼搴忓悕绉扮浉鍖归厤锛屽苟涓旀枃浠舵墿灞曞悕搴斾负.c銆


3. 缂栬疟浠g爜锛氭帴涓嬫潵锛屼綘闇瑕佷娇鐢–缂栬疟鍣ㄥ皢浣犵殑浠g爜缂栬疟鎴愬彲镓ц屾枃浠躲傚湪Windows涓婏纴浣犲彲浠ヤ娇鐢℅CC鎴朇lang绛夌紪璇戝櫒銆傚湪Linux鎴朚ac OS涓婏纴浣犲彲浠ヤ娇鐢℅CC鎴朇lang鎴栧叾浠朇缂栬疟鍣ㄣ傚叿浣撶殑缂栬疟姝ラゅ彲鑳戒细锲犵紪璇戝櫒钥屽纾锛屼絾阃氩父浣犲彧闇瑕佸湪锻戒护琛屼腑杈揿叆缂栬疟锻戒护鍗冲彲銆备緥濡傦纴瀵逛簬GCC锛屼綘鍙鑳介渶瑕佽緭鍏ョ被浼糮gcc your_file.c -o your_program`镄勫懡浠ゃ


4. 杩愯岀▼搴忥细链钖庯纴浣犲彲浠ヨ繍琛屼綘镄勭▼搴忎简銆傚湪Windows涓婏纴浣犲彲浠ラ氲繃鍙屽嚮鍙镓ц屾枃浠舵潵杩愯屽畠銆傚湪Linux鎴朚ac OS涓婏纴浣犲彲浠ヤ娇鐢ㄧ粓绔𨱒ヨ繍琛岀▼搴忋傞氩父锛屼綘闇瑕佽緭鍏ョ被浼间簬`./your_program`镄勫懡浠ゆ潵杩愯岀▼搴忋


𨰾揿𪾢鐭ヨ瘑锛

杩椤洓涓姝ラょ湅璧锋潵寰堢亩鍗曪纴浣嗗疄闄呬笂鍙鑳藉瓨鍦ㄤ竴浜涢梾棰樸备緥濡傦纴浣犲彲鑳介渶瑕佺‘淇濅綘镄勭幆澧冨凡缁忔g‘閰岖疆浜咰缂栬疟鍣ㄣ备綘涔熼渶瑕佷简瑙e备綍澶勭悊缂栬疟阌栾鍜岃﹀憡銆傚湪镆愪簺𨱍呭喌涓嬶纴浣犲彲鑳介渶瑕侀槄璇诲拰鐞呜В鐢熸垚镄勯敊璇娑堟伅浠ユ垒鍑洪梾棰樻墍鍦ㄣ


镐荤殑𨱒ヨ达纴杩欐槸涓涓鐩稿圭亩鍗旷殑杩囩▼銆


瀵逛簬鍒濆﹁呮潵璇达纴杩欎粛铹跺彲鑳介渶瑕佷竴浜涙椂闂村拰钥愬绩𨱒ユ帉鎻°


钖屾椂锛屽逛簬镟村嶆潅镄勭▼搴忓拰椤圭洰锛屼綘鍙鑳借缮闇瑕佽冭槛濡备綍缁勭粐浠g爜銆佸备綍绠$悊渚濊禆椤广佸备綍璋冭瘯绋嫔簭绛夐梾棰樸

热点内容
maveneclipse源码 发布:2024-11-09 02:03:31 浏览:651
python对齐打印 发布:2024-11-09 01:46:07 浏览:174
编译vbox61 发布:2024-11-09 01:42:12 浏览:915
超声波存储环境 发布:2024-11-09 01:41:33 浏览:284
国外访问学者研修计划 发布:2024-11-09 01:36:38 浏览:384
如何上传动态头像 发布:2024-11-09 01:33:52 浏览:935
怎么购买云存储空间 发布:2024-11-09 01:23:37 浏览:782
如何把安卓机上的图片备份 发布:2024-11-09 00:49:58 浏览:263
android分享微信 发布:2024-11-09 00:49:14 浏览:977
数列极限运算法则 发布:2024-11-09 00:48:37 浏览:896