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中语言的设置和本地化设置真是一个很繁琐的事情,时不时的会出现乱码的情况。一般来说,linux中显示什么语言是通过环境变量来确认的。
这些环境变量包括:
$LANG
/
$LANGUAGE
/
$LC_CTYPE
....
可以通过locale命令查看这些变量的值。
要设置这些变量,可以通过export命令来进行。如:
#
export
LANG=uc_EN
#
export
LC_CTYPE=c
可以把以这些命令加入到~/.bash_profile文件中,这样,就成了默认配置.
另外,文件/etc/sysconfig/i18n
也是可以配置语言选项的.
下面是修改的方法,可以将默认语言改为English:
#vi
/etc/sysconfig/i18n修改以下三行:
LANG="en_US.UTF-8"
SUPPORTED="en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
vim /etc/sysconfig/i18n初始的时候文件如下所示,但是可能只有其中的一两个;
LANG="en_US.UTF-8"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
SYSFONTACM="utf8"
然后你需要做的就是找到LANG 和 SUPPORTED 这两行,然后将以下内容对应着替换上。
LANG="en_US.UTF-8"
SUPPORTED="eu_ES.UTF-8:eu_ES:eu:zh_HK.UTF-8:zh_HK:zh:zh_CN.UTF-8:zh_CN:
zh:zh_SG.UTF-8:zh_SG:zh:zh_TW.UTF-8:zh_TW:zh:en_AU.UTF-8:en_AU:en:en_HK.
UTF-8:en_HK:en:en_US.UTF-8:en_US:en"
上面的是默认英文系统,支持中文简体、繁体、英文的设置
下面是中文设置
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)