C语言开篇

Linux下使用最广泛的C/C++编译器是GCC,大多数的Linux发行版本都默认安装,不管是开发人员还是初学者,一般都将GCC作为Linux下首选的编译工具。

1.小程序test_gets.c

#include <stdio.h>
#define MAX 100
main()
{
    char name[MAX];
    printf("Input the name:\n");
    gets(name);
    printf("The name is: %s \n",name);

}

保存文件后退出输入下面的命令:
    gcctest_gets.c -o test_gets
可以直接将C代码编译链接为可执行文件test_gets 。

2.分步编译:
1) 预处理
    gcc -E test_gets.c -o test_gets.i
在当前目录下会多出一个预处理结果文件 test_gets.i。
2) 编译为汇编代码
    gcc -S test_gets.i -o test_gets.s
其中-S参数是在编译完成后退出,-o为指定文件名。
3) 汇编为目标文件
    gcc -c  test_gets.s -o test_gets.o
.o就是目标文件。目标文件与可执行文件类似,都是机器能够识别的可执行代码,但是由于还没有链接,结构会稍有不同。
3) 链接并生成可执行文件
    gcctest_gets.o -o  test_gets

时间: 2024-07-30 20:26:42

C语言开篇的相关文章

GO_00:GO语言开篇

Go的发展史 Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后来还加入了Ian Lance Taylor, Russ Cox等人,并最终于2009年11月开源,在2012年早些时候发布了Go 1稳定版本.现在Go的开发已经是完全开放的,并且拥有一个活跃的社区. 当前行业背景 计算机一直在演化,但是编程语言并没有以同样的速度演化.现在的手机,内置的CPU核数可能

Study_Python3_Day1

Python的安装:请参考 https://blog.csdn.net/qq_29883591/article/details/52664478  若遇到lisense server问题,参考https://zhuanlan.zhihu.com/p/31689486 语言开篇信仰:Holle word print  ("Holle word") 变量赋值:python定义变量,不需定义类型,值是什么数据类型,就决定了这个变量的类型,变量名引用了数值的同时也引用了它的类型. 例: nam

【Material Design视觉设计语言】开篇

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells Github:https://github.com/AllenWells Material Design,即原质化设计,是Google官方退出的视觉设计语言,目的在于统一Android应用界面设计,提升用户体验.事实上不仅仅在Android上,在HTML等其他领域,Material Design也表现出了旺盛的生命力. 一 设计目标 Materia

&quot;GCC + C&quot; 语言入门首选推荐套餐-WangBook.com开篇

想到哪里写到哪里. 这里想分享的内容如下: 1.如果想在程序方便做一些独到的事情,C语言是入门语言的首选.当然现在也有大侠指出当前Swift也是一个更清新.自然的选择.但如果您之后想要对算法和汇编等深入学习,或者接触Objective-C还是建议您用C作为入门首选. 2.C语言真的很“没用”.作为一个初入江湖的小弟,不可能拿着它直接开辟出一片新天地,因为当下受开发工具和客户需求的制约,当下开发很多更贴合实际需求的应用时,C往往不是首选,因为有更实用的语言工具可选,但如果你对C有了一定的基础,相信

小巧灵活语言LUA小开篇

哇塞,第一篇博客,感觉好紧张啊.之前用c++来写cocos,后来了解到用脚本来写更加便于后期维护更新.最近便开始琢磨这个小脚本lua,lua语言封装的很小巧也很灵活,代码格式也是很简单并不像c++java那样严格.首先呢便是这个编译环境的搭配.<lua官网:http://www.lua.org/> 上面便是最新版的5.3.1下载包,我们将其下载解压.可以看到src目录下存在很多.c和.h文件,然后我们新建一个vs2012工程,将所有的文件导入生成.然后我们会得到一个lua 和luac的exe可

统一建模语言UML整理之开篇

引言: 这段时间将致力于写UML方面的博客,由于个人能力的有限,如果博客中出现错误的地方还请广大博友批评指正.为了更好地了解一个过程或者事物,人们通常根据所研究对象的某些特征(形状.结构.或行为等)建立相关的模型(Model).模型是从一个特定的视点对系统进行的抽象,它可以是实物模型,例如建筑模型,教学模型.玩具等,也可以是抽象数字或图示模型,例如数学公式或图形等.模型建立的目的不是复制真实的原物,而是帮助人们更好的理解复杂的事物本质,反应过程或事物内部各种因素执念的相互关系.下面就让我们进入U

《深入学习计算机系统(C语言)》学习进程之开篇第一章计算机系统漫游

1.1  信息就是位 + 上下文 程序的生命周期从源程序开始——这是一个有着某种扩展名(比如C源程序的文件扩展名为.c,java源程序的文件扩展名为.java,c++源程序的扩展名为.cpp等等)的文本文件.这些文本文件由一个个文本字符构成,而每个文本字符又由8个bit来构成. 数据有不同的数据对象,即不同的由bit组成的“实体”. 1.2  程序被其他程序翻译成不同的格式 为了在(操作)系统上运行程序,每条源程序上的语句都被其他程序转化为机器语言指令.然后将这些指令以可执行目标程序的格式打好包

【Material Design视觉设计语言】应用样式设计

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells Github:https://github.com/AllenWells [Material Design视觉设计语言]章节列表 [Material Design视觉设计语言]开篇 [Material Design视觉设计语言]Material Design设计概述 [Material Design视觉设计语言]应用布局设计 [Material D

Html5 Egret游戏开发 成语大挑战(一)开篇

最近接触了Egret白鹭引擎,感觉非常好用,提供了各种各样的开发工具让开发者和设计者更加便捷,并且基于typescript语言开发省去了很多学习成本,对于我们这种掉微软坑许久的童鞋来说,确实很有吸引力,在开发中最浪费时间就是设计和调试的阶段,js的语言过于自由,自由到有时候写错了都不知道,但typescript可以使用开发IDE帮助排错和调试,不得不说确实很有效率,在这之前,我在egret论坛里发了几个小游戏做练手,最近的一个<疯狂猜歌名>在素材齐备的情况下,仅用了不到1天的时间完成了开发,以