linux 下的 c 开发(linux用什么软件写程序)
大家好,今天小编来为大家解答linux 下的 c 开发这个问题,linux用什么软件写程序很多人还不知道,现在让我们一起来看看吧!
linux下c开发了一个应用程序,它的扩展名是什么
这个貌似涉及到linux文件系统。linux文件系统与windows的不相同,windows系统应该是通过文件后缀来进行文件类型是别的,而linux虽然也会借鉴后缀信息,但好像不完全依赖于文件后缀。
比如,在windows下,讲一个txt的文件后缀改为.doc那么系统会提示更改后缀可能导致文件不可用,并且默认以office将其打开,而不是记事本。而在linux上你更改一个文件后缀,不会有系统提示,比如你将一个txt的文件(其实所谓的txt文件在linux下,默认是没有后缀的)后缀改为.pdf,系统任然是用打开txt文件的程序将其打开而不是PDFreader什么的。
说到底,linux文件系统不依赖后缀名来识别文件类型,而是靠一种什么幻数(magic number)。具体是怎样做到的,我也不知道,查查吧;查到记得告诉我,呵呵。。。
linux下c开发一个应用程序,默认后缀是.out。比如你用gcc编译一段C代码:
gcc文件名.c
gcc将默认产生一个a.out的可执行文件。而一般情况下,我们都会更改产生文件的名称,至于后缀,般没有后缀,或者按个人喜好吧。
如果是跨平台的代码的话,那就看目标系统是怎么样的了。像楼下说的ELF文件,这个貌似是16位可执行二进制文件。在linux上进行交叉编译时见过,就是在linux系统里编译一段别的机器(比如路由,PDA,等能装嵌入式linux系统的东西)上可以执行的代码。
Linux操作系统中默认安装的C语言编译系统是
Linux操作系统中默认安装的C语言编译系统是GCC(GNU Compiler Collection),是Linux下最常用的C语言编译器,是GNU项目中符合ANSI,C标准的编译系统,能够编译用C、Object C等语言编写的程序。
同时它可以通过不同的前端模块来支持各种语言,如Java、Fortran、Pascal、Modula,3和Ada等。
C语言的标准
1.1 K,RC
1973年,Dennis M Ritchie设计和实现了C语言,从那以后使用者逐渐增加。
1978年,Kernighan和 Ritchie合著了《The C Programming Language》,这本书定义的C语言被称为 K,RC。
1.2标准 C
随着C语言使用日益广泛,出现了许多新问题,人们迫切希望对C语言进行标准化。
第一个标准:C89
1983年,ANSI成立了一个委员会X3J11,对C语言进行标准化。
1989年,ANSI批准了第一个C语言标准 X3,159-1989,并于1990年公布,被称为 ANSIC、C89或 C90。
1990年,这个标准又被批准为ISO标准:ISO,IEC 9899:1990。
ANSIC标准被ISO采纳,并且ISO发布的修订版也被ANSI采纳,因此ANSI标准和ISO标准实际上没有技术区别。这些名称的含义是相同的:ANSI C、ISO C、标准C。
1994年和1996年,ISO发布了两个技术更正,更正了1990ISOC标准中的错误。
第二个标准:C94
1995年,ISO发布了1990ISOC标准的一个补充,称为AMD1。扩充后的标准被称为C94或C95。
第三个标准:C99
1999年,ISO发布了一个新版本的ISOC标准:ISO,IEC9899:1999,称为C99。
2001年、2004年和2007年,ISO发布了三个技术更正,更正了1999ISOC标准中的错误。
第四个标准:C11
2011年,ISO发布了一个新版本的ISOC标准:ISO,IEC9899:2011,称为C11。C11是 C语言的最新标准。
1.3 GNUC
1984年,Richard Stallman发起了GNU计划,它的目标是开发一个完整且自由的Unix-like操作系统(GNU系统)。
GNU系统是一个完整的操作系统,包括操作系统内核和各种工具软件。各种GNU系统的变种(例如Redhat、Ubuntu等)已经被广泛使用,它们使用的操作系统内核都是Linux。虽然这些系统经常被称为Linux,但准确地说,它们是GNU/Linux系统。
GNU在编写Linux时扩展了标准C,称为GNUC。
GNU C的扩展详见:Extensions to the C Language Family
GNU C也称为Linux C,一般用于Linux上的开发,而标准C可以跨平台。
GNU C使用的编译器是GCC。
在Linux下如何开发C程序
在Linux开发环境下,GCC是进行C程序开发不可缺少的编译工具。GCC是GNU C Compile的缩写,是GNU/Linux系统下的标准C编译器。虽然GCC没有集成的开发环境,但堪称是目前效率很高的C/C++编译器。《linux就该这么学》非常值得您一看。Linux平台下C程序开发步骤如下:
1.利用编辑器把程序的源代码编写到一个文本文件中。
比如编辑test.c程序内容如下:
/*这是一个测试程序*/
#include<stdio.h>
int main(void)
{
printf("Hello Linux!");
}
2.用C编译器GCC编译连接,生成可执行文件。
$gcc test.c
编译完成后,GCC会创建一个名为a.out的文件。如果想要指定输出文件,可以使用选项-o,命令如下所示:
$gcc-o test1 test.c
这时可执行文件名就变为test1,而不是a.out。
3.用C调试器调试程序。
4.运行该可执行文件。在此例中运行的文件是:
$./a.out或者 test1
结果将得出:
Hello Linux!
除了编译器外,Linux还提供了调试工具GDB和程序自动维护工具Make等支持C语言编程的辅助工具。如果想要了解GCC的所有使用说明,使用以下命令:
$man gcc