在windows下写C程序是一件很容易的事,装好Turbo C就可以了,相信各位学过编程的都十分了解Turbo C吧。特别是现在大学里人人忙考级的情况下,二级C语言大概成了每个人默认考过的等级考试吧。可是在linux下又如何写C程序呢?其实,linux下写C也是很容易的。IDE的话用 eclipse 集成 CDT 模块就行了。当然这属于重量级的了,就如同VC++之于windows一样。那有没有像Turbo C那样的小工具呢,主要也就是用到它的编译功能。恩,这就是这次我们要说的 GCC 了。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
根据 wikipedia (google)上的定义,GCC(GNU Compiler Collection,GNU编译器套装),是一套由GNU开发的编程语言编译器。它是GNU toolchain的关键部分,亦是开放源代码的类Unix操作系统的标准编译器。
GCC跟Turbo C的处理过程大同小异,其由C语言源代码文件生成可执行文件的过程不仅仅是编译的过程,而是要经历四个相互关联的步骤∶预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编(Assembly)和连接(Linking)。所以,基本上可以这么说,用过Turbo C的,很容易就会习惯GCC了。
好了,现在我们来写个简单的程序吧。首先是安装GCC,如果你使用的是Ubuntu,则在终端中输入以下命令来安装GCC。
sudo apt-get install gcc

安装好GCC就可以写程序了?别急,现在GCC什么文件都还不能编译呢。还记得在Turbo C上我们不是还要设置头文件的路径吗?是的,我们需要安装这些头文件,这就是build- essential软件包。安装好这个包,系统就会自动安装上g++,libc6-dev,linux-libc-dev,libstdc++6-4.1- dev等一些必须的软件和头文件的库。我们可以在终端中输入下面命令来安装:
sudo apt-get install build-essential
好了,环境搭建完毕,就让我们开始动手写程序吧。首先来个最经典的hello world热热身。用 gedit 或者 vi 写下这个程序,并保存为hello.c。
#include <stdio.h>
int main()
{
printf( “Hello world!\n” );
return 0;
}
将文件保存为hello.c后,在终端中使用敲入以下命令来使用GCC对程序进行编译。
gcc hello.c -o hello
编译通过后,我们会在当前目录中看到hello文件,这就是编译后生成的可执行文件。好了,我们来运行一下它,来跟world打个招呼。
./hello
我们可以看到在终端中输出了”Hello world!”,这就说明我们的程序运行成功了。
最后,需要特别说明的是GCC中对于文件后缀的规定有点特殊,特别是C++源代码文件的后缀不是cpp,而是cc或cxx。
.c为后缀的文件,C语言源代码文件;
.a为后缀的文件,是由目标文件构成的档案库文件;
.C,.cc或.cxx 为后缀的文件,是C++源代码文件;
.h为后缀的文件,是程序所包含的头文件;
.i 为后缀的文件,是已经预处理过的C源代码文件;
.ii为后缀的文件,是已经预处理过的C++源代码文件;
.m为后缀的文件,是Objective-C源代码文件;
.o为后缀的文件,是编译后的目标文件;
.s为后缀的文件,是汇编语言源代码文件;
.S为后缀的文件,是经过预编译的汇编语言源代码文件。
好了,发挥想象力尽情写程序吧!

转载于:https://blog.51cto.com/stevens/174797

Linux下编写C程序( GCC )相关推荐

  1. linux 编写完程序吗,linux下编写C++程序

    注:本文写的内容全部在ubuntu12.04下完成. 要在linux下写C++程序,要懂的一点编译的知识.下面介绍一下. 源代码->预处理器(负责将代码补充)->汇编程序(生成汇编语言)- ...

  2. 在Linux下编写C++程序,使用gcc编译c++出错

    问题 /usr/bin/ld: /tmp/ccMSWoFl.o: in function __static_initialization_and_destruction_0(int, int)': f ...

  3. 在Linux下编写C程序,怎么检查程序是否有内存泄漏?

    From: http://bbs.chinaunix.net/thread-908769-1-1.html 如题. ------------------------------- 找到了!  http ...

  4. linux 程序播放音频,linux下编写C++程序播放音频

    linq实现数组转符号分割的字符串(备忘) fitemidstr = string.Join(",", detailpre1.Select(i => i.Key.ToStri ...

  5. Linux运行911,韦东山-Linux下编写GT911触摸驱动 - 百问网嵌入式问答社区

    源码在最下面 问题一:资源获取Gt911数据手册 在韦老师给的资料里,路径为\06_Datasheet\Extend_modules\7寸LCD模块\电容触控芯片GT911 Datasheet_121 ...

  6. Linux下C语言程序编写及执行和分步骤编译链接C源代码

    实验一:Linux下C语言程序编写及执行 //hello.c #include <stdio.h> int main(){int x = 1;int y = 2;int sum = x + ...

  7. linux应用程序的编写实验原理,操作系统实验 1.在linux下编写一个应用程序 联合开发网 - pudn.com...

    操作系统实验 所属分类:Linux/Unix编程 开发工具:C/C++ 文件大小:1KB 下载次数:3 上传日期:2019-05-01 20:34:21 上 传 者:烟雨南风起 说明:  1.在lin ...

  8. linux下软件编译终止,[2018年最新整理]linux下编译运行程序命令大全.ppt

    [2018年最新整理]linux下编译运行程序命令大全 1. 项目课题引入 2. Vi编辑器的使用方法 3. Linux中C语言程序的编辑 4. Linux中C语言程序的运行 5. 现场演示案例 课题 ...

  9. spdlog linux编译出错,Linux下编写Makefile引入第三方库

    Linux下编写Makefile引入第三方库 前言:一直在使用CmakaList 生成Makefile文件,其实很少去写Makefile,但是最近帮朋友处理了一个Makefile引入第三方库的问题,就 ...

  10. Linux下编写C语言

    刚入门计算机的小伙伴们,肯定接触的语言是C/C++,在Unix内核下编程,如windows需要安装相应的编程软件,比较经典的是Microsoft Visual Studio 6.0,我就不多赘述了,下 ...

最新文章

  1. linux 查看剪贴板历史,Clipboard History Manager插件,查看浏览器剪贴板历史记录
  2. flask 快速入门链接
  3. Android Prelink
  4. python怎么学最快-怎么快速自学python
  5. abstract类_走进C# abstract,了解抽象类与接口的异同
  6. Elasticsearch 集群中增加专用master节点
  7. windows怎么打开python_windows怎么打开Python
  8. 【OpenCV】OpenCV函数精讲之 -- 教你如何使用离散傅里叶变换
  9. Docker入门之四搭建私有仓库
  10. python所有软件-太牛逼!一款软件几乎可以操作所有的数据库!
  11. 函数2——*args/**kwargs、作用域、函数的嵌套、关键字globa和nonlocal、函数的注释...
  12. db9口rs485引脚接收和发送定义
  13. android ios开发难度对比,ios VS android:这不就是简洁与复杂最明显的对比
  14. 英文字母pc是什么意思,互联网的pc指的是什么
  15. 多个PDF怎么一起打印?教你两种打印方法
  16. java中逗号运算符的含义_逗号运算符什么时候有用?
  17. 【linux性能优化】定位分析狂打日志的问题
  18. Windows: Ctrl,Alt, Shift等快捷键的含义
  19. js function后面小括号
  20. 谷歌账户在别的网上登过_如何在Google帐户之间转移联系人

热门文章

  1. python hbase_python 操作 hbase
  2. java分子分母题,JAVA黄金分割点练习题
  3. ubuntu中如何查看系统信息(uname)
  4. Best of Best系列(1)——CVPR
  5. 实现对接顺丰业务的订单管理系统
  6. 服务站: WCF 消息传递基础 -- MSDN Magazine, April 2007
  7. .nett Core之路由配置
  8. Python3 pygal 与 pygal_maps_world 绘制世界地图
  9. openoffice转换pdf 异常问题查找处理 errorCode 525
  10. 深入理解Yii2.0(yii学习的经典博客)