灌溉梦想,记录脚步

三大计算机认证考试需理智选择 不同侧重

全国计算机等级考试

全国计算机等级考试(NCRE)是经原国家教育委员会(现教育部)批准,由教育部考试中心主办,面向社会,用于考查应试人员计算机应用知识与能力的全国性计算机水平考试体系。

NCRE考试共设置四个等级:

一级:考核微型计算机基础知识和使用办公软件及因特网(Internet)的基本技能。考试科目:一级MSOffice、一级WPS Office、一级B(部分省市开考)。

二级:考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。考试科目:语言程序设计(包括C、C++、Java、Visual Basic)、数据库程序设计(包括Visual FoxPro、Access)。

三级:分为“PC技术”、“信息管理技术”、“数据库技术”和“网络技术”四个类别。“PC技术”考核PC机硬件组成和Windows操作系统的基础知识以及PC机使用、管理、维护和应用开发的基本技能;“信息管理技术”考核计算机信息管理应用基础知识及管理信息系统项目和办公自动化系统项目开发、维护的基本技能;“数据库技术”考核数据库系统基础知识及数据库应用系统项目开发和维护的基本功能;“网络技术”考核计算机网络基础知识及计算机网络应用系统开发和管理的基本技能。

四级:考核计算机专业基本知识及计算机应用项目分析设计、组织实施的基本技能。

NCRE考试每年开考两次,上半年开考一、二、三级,下半年开考一、二、三、四级。

全国计算机等级考试合格证书全国通用,证书上印有持有人身份证号码。自1994年开考以来,NCRE考生人数逐年递增,保守估计,累计考生已超过1500万人,获证人数超过500万人。

计算机应用技术考试

全国计算机应用技术证书考试(NIT)是教育部考试中心主办,各省级考试机构和系统承办的。它借鉴了英国剑桥大学考试委员会举办的剑桥信息技术(CIT)考试的成功经验。NIT针对用人单位录用干部、评定职称、晋升职务和上岗培训的需求,采用了系统化的设计、模块化的结构、个性化的教学、规范化的考试和国际化的标准,适合各种行业人员岗位培训的需要,给用人单位提供了一个科学、客观、统一、公正的标准。

NIT具有以下特点:

(1)系统化的设计。以建构主义学习理论的精华为指导思想,以任务驱动的原则为教学模式,采用指导评估的方式进行能力考核,侧重培养学员的实际应用技能,着重考查学员的独立操作解决问题能力。

(2)模块化的结构。根据计算机技术发展的特点和学习者在应用领域中的实际需要,在培训课程设置上紧跟计算机技术的发展,在教学过程中充分体现学员的需求,强调应用,强调技能,为用人单位提供了一个客观、统一、规范的标准,适合各种行业人员计算机培训的需要。

(3)个性化的教学。各模块课程设置灵活并与工作岗位紧密结合,不仅注重培养学员的独立操作能力,而且强调培养学员的创造精神和实践能力,便于学员根据从事的工作性质选学有关模块,同时用人单位也可根据工作性质选择所需人才的知识组合。

(4)规范化的考试。考试分为过程式考核、作业设计及上机考试三个阶段,只记成功,不记失败。学员在培训过程中根据培训考试大纲的要求完成过程式考核及作业设计,上机考试针对学员的独立操作能力和独立解决问题能力进行综合测试,由教育部考试中心统一命题。

(5)权威性的证书。合格证书由教育部考试中心签发,是持有人计算机应用能力的证明。

计算机技术与软件考试

计算机技术与软件专业技术资格考试由人事部和信息产业部组织。考生人数已达百万。最初专为软件专业人员设计,1988年开始试点,1990年起在全国普遍开考。2003年前,该考试分资格考试和水平考试两类,资格考试报考者必须是软件技术人员,对学历、工作年限有要求。水平考试没有报考限制,面向社会开考。

2004年1月1日起,该考试进行了改革,取消报考限制,面向社会各界从事计算机应用技术、软件、网络、信息系统和信息服务的专业技术人员。考试每年举行两次。

软件资格考试已纳入全国专业技术人员职业资格证书制度统一规划。人事部规定,该系列不再组织职称评审:考试取得初级资格可聘任技术员或助理工程师职务;取得中级资格可聘任工程师职务;取得高级资格,可聘任高级工程师职务。

计算机专业技术资格(水平)考试划分为计算机软件、网络、应用技术、信息系统和信息服务5个专业类别,各专业类别中分设高、中、初级。2005年考试在原有专业基础上,中级新增软件评测师、多媒体应用设计师、信息系统监理师3专业,高级新增信息系统项目管理师。开考模块有初级的程序员、网络管理员、电子商务技术员、信息处理技术员;中级设软件设计师、网络工程师、电子商务设计师、信息系统监理师;高级设信息系统项目管理师、系统分析师。考试已设初级为程序员、网络管理员;中级为软件评测师、软件设计师、网络工程师、多媒体应用设计师、信息系统监理师、数据库系统工程师;高级为信息系统项目管理师、系统分析师等。

介绍一种新型编译型编程语言:eC


eC,是一位加拿大人jerome历时十二年开发的一门编译型编程语言,拥有C++项目的性能和Java的跨平台性以及Python的方便性。

  目前eC拥有自己的IDE,专用的面向对象数据库。

  eC的理念是:开发一次,部署在所有平台,包括Windows,linux,Mac os,仅仅依赖一个轻量级的运行库!

  它拥有与C++一样的性能,拥有和Java一样的跨平台性。这来自与eC语言自行开发的GUI库,3D图形库,Socket库…… 这些使得你能够迅速的开发你的软件(没错,就像python一样快捷),然而却拥有像C++开发的软件一样的性能!

  eC拥有自己的IDE,当然IDE也是用eC写成。

计算机专业人才

2000年“网络泡沫”破灭后,全球IT人才需求缩水,但世界IT产业的生产基地和研发中心正陆续在我国设立。全球新一轮的产业转移正推动我国由IT大国向IT强国转变,这将进一步刺激国内对计算机专业人才的需求。

  目前,我国有1180余所高校开设有计算机专业,在校生人数超过80万,专业的设点数和在校生人数都位居全国各专业之首。但是,随着近年来计算机专业初次就业率走低,一些考生及其家长也开始感到迷茫:计算机专业的就业形势及前景究竟如何呢?

  观沧海:寒流?暖流?

  20世纪,我国每年的计算机专业毕业生仅有5~9万人,人才培养远远不能满足社会经济发展的需要,就业长期处于“卖方市场”。本世纪,随着各高校竞相开设计算机专业,扩大招生规模,毕业生人数剧增,就业步入“买方市场”。

  IT人才市场竞争日趋激烈。首先,用人单位普遍提高招聘门槛。有些用人单位强调应聘者的英语水平、IT证书,有些用人单位则要求应聘者具有本科以上学历,三年以上行业工作经验。计算机专业毕业生就业难度加大,初次就业率走低,起薪下降。其次,由于留学人员大量归国,国内博士、硕士毕业生人数迅速增多,毕业生就业的单位层次在不断降低。计算机专业与通信工程、自动化、电子技术、电子商务等相近专业间相互挤占就业岗位,就业空间逐渐“缩水”。再次,由于各行各业自主培养各种层次的计算机应用人才,各学科专业增开计算机课程,计算机专业毕业生在一些行业内的竞争优势逐渐减弱。最后,社会需求越来越向名牌大学集中,重点大学计算机专业初次就业率在90%以上,地方大学就业率则为60%~90%。

  大学生就业形势偏紧和就业层面下移是世界高等教育各学科专业共同性的问题,而不是我国计算机专业独有的现象。计算机专业招生规模趋于稳定,初次就业率走低,这些都是从一种过热状态向良性状态过渡的正常变化。从整体来看,计算机专业毕业生初次就业率和起薪仍保持在一个较高的水平,计算机专业仍是年轻人升学和择业时的首选之一。未来十年,我国每年至少需要100万IT人才,其中计算机人才需求量在40万以上。从根本上来讲,并不存在计算机专业毕业生就业难的问题。计算机专业毕业生就业形势将依然严峻,但不会恶化;会遭遇“寒流”,但不会进入“严冬”。

细思量:就业难不因人才过剩

  目前计算机专业毕业生“就业难”的根本原因不是人才过剩,而是供需结构性失衡。

  人才培养脱节。本科计算机教育中,单一的计算机科学与技术专业设置下的单一的培养规格,难以满足众多领域的社会需求。高等专科院校的计算机专业大多是传统的计算机学历教育,重视理论知识的系统传授,轻视应用技能的强化培养。一些毕业生既无扎实的理论功底,又无娴熟的应用技能,便难以适应计算机应用领域的需要,更难以适应IT行业的从业要求。软件学院和软件职业技术学院的计算机专业的课程设置面向IT企业,虽然办学方式相对灵活,但仍受到实战项目缺乏、实训基地短缺、来自企业一线的高素质师资匮乏等因素的制约,未能实现人才培养与企业需求的无缝对接。

  市场渠道不畅。中西部地区IT产业发展的相对滞后,在一定程度上影响了当地计算机专业毕业生的就业。沿海地区IT产业发展迅猛,但由于种种政策限制,加之人才市场竞争十分激烈,中西部地区计算机专业毕业生到沿海地区就业的难度越来越大。此外,一些行业的自我保护也给计算机专业毕业生的进入带来了较大障碍;一些用人单位只认学历不论实力,为专科生的就业设置了很多障碍。目前就业形式正在多样化,计算机专业毕业生中存在大量已实际就业,但学校不易统计的“隐性就业”现象。

  就业期望过高。毕业生最向往的就业单位是国家机关、事业单位和外资企业,而实际就业则集中在私营企业;毕业生热衷于软件公司、网络公司,而大多数却在非IT企业从事相关工作;毕业生向往沿海发达地区和区域大中城市,而大部分仍留在当地中小城镇就业;IT人才市场上起薪大幅下降,但许多毕业生用多年以前的工资水平,用沿海地区的薪酬水平来期望自己的就业薪金。还有一些毕业生过分挑剔,从而也失去了很多就业机会。
登高处:IT人才仍属“抢手货”

  2000年“网络泡沫”破灭后,全球IT人才需求缩水,但世界IT产业的生产基地和研发中心正陆续在我国设立。全球新一轮的产业转移正推动我国由IT大国向IT强国转变,这将进一步刺激国内对计算机专业人才的需求。

  计算机人才需求总量持续增加。“十五”期间,我国IT产业迅速发展成为第一大产业,从业人员增加300万。“十一五”期间,我国计算机人才需求将由快速增长时期逐步进入平稳发展时期。通信、交通、航空等领域对计算机人才需求总体平稳,但需求层次明显提高;水利、能源、建筑、医疗、新闻、出版、广告、旅游等行业对计算机人才需求总量有所增加;化工、冶金、石油、电力、制造、轻工、纺织、制药、物流等行业对计算机人才的需求量持续增长;部队的现代化建设和国防科技工业急需计算机人才;税务、工商、财政、公安、海关、外贸、金融等系统对计算机人才的需求不减;五年内,电子政务和电子金融专业人才缺口将达到30万,中小学预计需要新增现代信息技术课师资20万人。

  企业是计算机人才需求的主体。近年来,计算机专业毕业生到企业从事计算机应用和技术开发的比例逐年增加,在经济发达地区已成为就业的主渠道。在全国约3000家大型企业中,只有5%的企业信息化建设进入成熟阶段,国有企业吸纳毕业生潜力巨大。高新技术企业发展迅速和要求员工素质高的特点,使其成为吸收计算机专业大学生的主要企业单位。外国公司涌入我国,需要招聘大批高素质的计算机人才,毕业生的就业选择和人才流动会更偏向外资企业。

  IT产业成为接收计算机专业毕业生的生力军。IT人才是我国四大紧缺性人才之一。未来十年,我国电子商务人才、游戏开发人才、移动通信人才、IC技术人才、信息安全人才严重短缺。我国软件人才总量不足,结构也不合理,软件测试专业人员缺口高达20万,嵌入式软件工程师每年的缺口为15万左右。随着软件外包业的蓬勃发展,日、韩等小语种软件工程师十分紧缺,仅对日软件开发的人才缺口就达30万以上。全球IT业重心正转向服务。2007年,我国软件和服务市场总值分别达到69亿美元和144亿美元,巨大的服务市场需要吸纳大量的计算机应用人才。
慎选择:怎识计算机专业真面目

  计算机专业是高校招生的第一大专业,也是高考填报志愿的热门专业。同学们应走出志愿填报过程的误区,理性选择计算机专业。

  应了解IT产业、IT学科和专业。IT产业涵盖软件、电信、电子及现代信息服务等行业。目前,我国本科计算机专业主要包括计算机科学与技术、自动控制、电子技术、通信工程、电子商务、信息安全、信息管理与信息系统、地理信息系统等;专科计算机专业设置众多,主要包括计算机应用、软件工程、网络工程、电子商务、多媒体制作等,招收对象主要是高中理科生(招收部分文科生)。IT产业是朝阳产业、支柱产业,IT学科前景美好。

  应理解计算机专业的学科特点。计算机是一门理论性、应用性极强的学科(工科或理科)。社会上曾流行一种观点:计算机是一种工具,计算机专业是一种单纯的技术专业。这种认识有些片面、肤浅。计算机学科本身有着众多研究领域和分支,比如计算机体系结构、软件工程、计算机网络、人工智能、计算机控制等。计算机与传统学科融合产生了许多新学科,如计算数学、控制理论与控制工程、机械制造及自动化、微电子学、信号与信息处理、生物信息学、教育技术学等。因此,许多学科都与信息技术有密切联系。高考时选报计算机专业,无论是大学毕业后直接就业,还是继续深造(包括跨专业深造),都是很好的选择。

  应明确计算机专业的课程设置。本科计算机专业对同学的英语、数学和物理基础有一定要求。大学中的计算机专业将分阶段开设基础英语和专业英语,双语教学对计算机专业人才培养来说势在必行。如果具备良好的英语基础,则可以减少掌握最新计算机技术的语言障碍。计算机专业开设高等数学、线性代数、概率与数理统计等课程,扎实的数学基础有益于科学思维和技术创新,也是高级计算机人才必备的素质。世界计算机领域最高奖项——“图灵奖”的得主大都是数学家,足以说明这一点。物理方面主要是运用电学知识,大学开设模拟电路、数字电路等课程,计算机专业课程主要有数据结构、操作系统、离散数学、编译原理、计算机组成原理、数据库原理、C++、Java、计算机网络等。

  应熟悉计算机专业的学习特点。计算机专业是一门知识更新快、交叉学科多、应用领域广的新学科,要求计算机专业人才拓宽和加深理论基础,提高以创新能力、实践能力为主的全面素质,具有广泛和多层次的适应性。如果大学阶段只重视操作层面上的技能学习,忽视理论知识的学习、思维基础的培养、创新能力的训练,就会削弱发展的后劲和适应能力。社会各界对高校计算机教育的意见中,最多的就是毕业生缺乏实际工作能力。因此,同学们在校期间须加强职业技能的培养,掌握IT主流技术。

  应认清报考计算机专业的误区。一些同学担心自己没接触过电脑,报考计算机专业不能适应大学里的学习。尽管具备一定的电脑知识和技能更有利于计算机专业的学习,但电脑操作熟练程度与学好计算机专业并没有必然联系。一些人认为女生不适合学习计算机专业,其实,IT业内成功女性并不少见,计算机专业女生比例并不比其他专业低。一些考生家长认为选择计算机专业会加重经济负担,其实以目前各大学的实验条件,完全能够满足同学们的实践要求,无须同学自己购买电脑。而且相对于其他专业而言,计算机专业的同学会有更多的社会兼职和勤工助学的机会。还有一些同学误认为计算机专业录取分数高于其他专业而不敢报考,实际上在大多数院校,计算机专业和其他专业录取分数基本一致。需要说明的是(体检说明中没有直接要求),深度近视的同学应慎报计算机专业,严重色盲的同学应慎报动画设计、游戏制作专业。

  应掌握报考计算机专业的技巧。其一,应考虑学校的层次。不同类型、不同层次的高校,其计算机专业的人才培养目标和规格有一定的差异。研究型大学重点培养科研型的计算机学术人才;科研教学型(或教学科研型)大学立足培养工程型的计算机技术人才;教学型大学尤其是地方大学、新建本科院校、独立学院,主要是为地方社会经济发展培养复合型的计算机应用人才。其二,应兼顾学校的区域。我国在北京、上海、大连、杭州、南京、广州、深圳、武汉、成都、西安等高校较为集中的城市兴建了软件产业基地,IT产业发展迅猛。选报IT产业发达地区的高校,不仅选择余地比较大,而且就业空间也相对广阔。其三,应注意学校的办学特色。应选报那些社会声誉高、师资力量强、办学条件优的高校,选报那些行业背景明显、办学特色突出、就业渠道畅通的高校。

Windows和linux下搭建java开发环境

一、windows下开发环境的搭建

从http://java.sun.com/上下载windows平台的JDK,并安装。假设安装目录为:C:\jdk6.0

设定相关环境量(以windowsXP)例:

1、右击桌面上“我的电脑”,选择属性

2、再选择“高级”活页,找到系统变量,并点击下面的“新建”

3、变量名:JAVA_HOME ,值:C:\jdk6.0(你的JDK安装目录),点击“确定”

4、以同样的方法新建,变量名:CLASSPATH ,值: %JAVA_HOME%\lib;.

注意,后面是分号与点号(英文的),不能错。

5、在系统变量中找到“path”,并点击“修改”,在其对应的值的最后面追加“;%JAVA_HOME%\bin”,引号不在内,一直点“确定”直到所有的窗口关闭

6、打开“运行”窗口,输入“cmd”回车,在出现的提示符窗口下输入:“javac -version”并回车,出现“javac 1.6.0”等类似的信息,则大功告成也。

7、安装你的开发IDE,如Eclipse、JBuilder等,就不多说了。

二、linux下开发环境的搭建(以Ubuntu为例)

1、从http://java.sun.com/上下载linux平台的JDK,的bin档;

2、将你下载的bin档放在你想安装的目录,如/opt下面,下面假设放在/opt目录下,文件名为jdk1.6.0.bin

3、打开终端,依次执行下列命令:

cd /opt

sudo sh jdk1.6.0.bin (其它平台不需要sudo,只要相应的权限就可以)

jdk安装完成,安装目录为:/opt/jdk1.6.0

4、设定环境变量

a、编辑/etc/profile文件,在最后面追加以下内容:

JAVA_HOME=/opt/jdk1.6.0

CLASSPTH=$JAVA_HOME/lib:.

PATH=$PATH:$JAVA_HOME/bin

export JAVA_HOME CLASSPATH path

b、保存后在终端执行

source /etc/profile (保证你不用重启而加载新设定的环境变量)

javac -version

看到“javac 1.6.0”等信息就大功告成,就可以安装你的IDE了,如Eclipse等。

Ubuntu 配置 Static IP 的方法

Ubuntu的网络参数保存在文档 /etc/network/interfaces中,默认配置使用dhcp,内容如下:
# The primary network interface
auto eth0
iface eth0 inet dhcp

配置静态ip的方法如下:
1) 编辑 /etc/network/interfaces
1.1)将dhcp 一行屏蔽
# The primary network interface
auto eth0
#iface eth0 inet dhcp

1.2)添加和静态ip有关的参数
# The primary network interface
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
gateway 192.168.0.1

2)编辑 /etc/resolv.conf,配置dns
nameserver 202.96.134.133
nameserver 202.106.0.20

3)执行下面两个命令,启用新配置
$sudo ifdown eth0
$sudo ifup eth0

gcc参数详解

[介绍]
gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步
1.预处理,生成.i的文件[预处理器cpp]
2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs]
3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as]
4.连接目标代码,生成可执行程序[链接器ld]
[参数详解]
-x language filename
  设定文件所使用的语言,使后缀名无效,对以后的多个有效.也就是根据约定C语言的后缀名称是.c的,而C++的后缀名是.C或者.cpp,如果你很个性,决定你的C代码文件的后缀名是.pig 哈哈,那你就要用这个参数,这个参数对他后面的文件名都起作用,除非到了下一个参数的使用。
  可以使用的参数吗有下面的这些
  `c'', `objective-c'', `c-header'', `c++'', `cpp-output'', `assembler'', and `assembler-with-cpp''.
  看到英文,应该可以理解的。
  例子用法:
  gcc -x c hello.pig
  
-x none filename
  关掉上一个选项,也就是让gcc根据文件名后缀,自动识别文件类型
  例子用法:
  gcc -x c hello.pig -x none hello2.c
  
-c
  只激活预处理,编译,和汇编,也就是他只把程序做成obj文件
  例子用法:
  gcc -c hello.c
  他将生成.o的obj文件

-S
  只激活预处理和编译,就是指把文件编译成为汇编代码。
  例子用法
  gcc -S hello.c
  他将生成.s的汇编代码,你可以用文本编辑器察看

-E
  只激活预处理,这个不生成文件,你需要把它重定向到一个输出文件里面.
  例子用法:
  gcc -E hello.c > pianoapan.txt
  gcc -E hello.c | more
  慢慢看吧,一个hello word 也要与处理成800行的代码

-o
  制定目标名称,缺省的时候,gcc 编译出来的文件是a.out,很难听,如果你和我有同感,改掉它,哈哈
  例子用法
  gcc -o hello.exe hello.c (哦,windows用习惯了)
  gcc -o hello.asm -S hello.c

-pipe
  使用管道代替编译中临时文件,在使用非gnu汇编工具的时候,可能有些问题
  gcc -pipe -o hello.exe hello.c

-ansi
  关闭gnu c中与ansi c不兼容的特性,激活ansi c的专有特性(包括禁止一些asm inline typeof关键字,以及UNIX,vax等预处理宏,

-fno-asm
  此选项实现ansi选项的功能的一部分,它禁止将asm,inline和typeof用作关键字。     
-fno-strict-prototype
  只对g++起作用,使用这个选项,g++将对不带参数的函数,都认为是没有显式的对参数的个数和类型说明,而不是没有参数.
  而gcc无论是否使用这个参数,都将对没有带参数的函数,认为城没有显式说明的类型
  
-fthis-is-varialble
  就是向传统c++看齐,可以使用this当一般变量使用.
  
-fcond-mismatch
  允许条件表达式的第二和第三参数类型不匹配,表达式的值将为void类型
  
-funsigned-char
-fno-signed-char
-fsigned-char
-fno-unsigned-char
  这四个参数是对char类型进行设置,决定将char类型设置成unsigned char(前两个参数)或者 signed char(后两个参数)
  
-include file
  包含某个代码,简单来说,就是便以某个文件,需要另一个文件的时候,就可以用它设定,功能就相当于在代码中使用#include
  例子用法:
  gcc hello.c -include /root/pianopan.h
  
-imacros file
  将file文件的宏,扩展到gcc/g++的输入文件,宏定义本身并不出现在输入文件中
  
-Dmacro
  相当于C语言中的#define macro
  
-Dmacro=defn
  相当于C语言中的#define macro=defn
  
-Umacro
  相当于C语言中的#undef macro

-undef
  取消对任何非标准宏的定义
  
-Idir
  在你是用#include"file"的时候,gcc/g++会先在当前目录查找你所制定的头文件,如果没有找到,他回到缺省的头文件目录找,如果使用-I制定了目录,他
  回先在你所制定的目录查找,然后再按常规的顺序去找.
  对于#include,gcc/g++会到-I制定的目录查找,查找不到,然后将到系统的缺省的头文件目录查找
  
-I-
  就是取消前一个参数的功能,所以一般在-Idir之后使用
  
-idirafter dir
  在-I的目录里面查找失败,讲到这个目录里面查找.
  
-iprefix prefix
-iwithprefix dir
  一般一起使用,当-I的目录查找失败,会到prefix+dir下查找
  
-nostdinc
  使编译器不再系统缺省的头文件目录里面找头文件,一般和-I联合使用,明确限定头文件的位置
  
-nostdin C++
  规定不在g++指定的标准路经中搜索,但仍在其他路径中搜索,.此选项在创libg++库使用
  
-C
  在预处理的时候,不删除注释信息,一般和-E使用,有时候分析程序,用这个很方便的
  
-M
  生成文件关联的信息。包含目标文件所依赖的所有源代码你可以用gcc -M hello.c来测试一下,很简单。
  
-MM
  和上面的那个一样,但是它将忽略由#include造成的依赖关系。
  
-MD
  和-M相同,但是输出将导入到.d的文件里面
  
-MMD
  和-MM相同,但是输出将导入到.d的文件里面
  
-Wa,option
  此选项传递option给汇编程序;如果option中间有逗号,就将option分成多个选项,然后传递给会汇编程序
  
-Wl.option
  此选项传递option给连接程序;如果option中间有逗号,就将option分成多个选项,然后传递给会连接程序.
  

-llibrary
  制定编译的时候使用的库
  例子用法
  gcc -lcurses hello.c
  使用ncurses库编译程序
  
-Ldir
  制定编译的时候,搜索库的路径。比如你自己的库,可以用它制定目录,不然
  编译器将只在标准库的目录找。这个dir就是目录的名称。
  
-O0
-O1
-O2
-O3
  编译器的优化选项的4个级别,-O0表示没有优化,-O1为缺省值,-O3优化级别最高     
-g
  只是编译器,在编译的时候,产生调试信息。
  
-gstabs
  此选项以stabs格式声称调试信息,但是不包括gdb调试信息.
  
-gstabs+
  此选项以stabs格式声称调试信息,并且包含仅供gdb使用的额外调试信息.
  
-ggdb
  此选项将尽可能的生成gdb的可以使用的调试信息.

-static
  此选项将禁止使用动态库,所以,编译出来的东西,一般都很大,也不需要什么
动态连接库,就可以运行.

-share
  此选项将尽量使用动态库,所以生成文件比较小,但是需要系统由动态库.

-traditional
  试图让编译器支持传统的C语言特性

[参考资料]
-Linux/UNIX高级编程
  中科红旗软件技术有限公司编著.清华大学出版社出版
-Gcc man page
  
[ChangeLog]
-2002-08-10
  ver 0.1 发布最初的文档
-2002-08-11
  ver 0.11 修改文档格式
-2002-08-12
  ver 0.12 加入了对静态库,动态库的参数
-2002-08-16
  ver 0.16 增加了gcc编译的4个阶段的命令

运行 gcc/egcs

**********运行 gcc/egcs***********************
  GCC 是 GNU 的 C 和 C++ 编译器。实际上, GCC 能够编译三种语言:C、C++ 和 Object C(C 语言的一种面向对象扩展)。利用 gcc 命令可同时编译并连接 C 和 C++ 源程序。
  如果你有两个或少数几个 C 源文件,也可以方便地利用 GCC 编译、连接并生成可执行文件。例如,假设你有两个源文件 main.c 和 factorial.c 两个源文件,现在要编译生成一个计算阶乘的程序。
代码:

———————–
清单 factorial.c
———————–
int factorial (int n)
{
  if (n <= 1)    return 1;   else    return factorial (n - 1) * n; } ----------------------- 清单 main.c ----------------------- #include 
#include 

int factorial (int n);
int main (int argc, char **argv)
{
  int n;

  if (argc < 2)   {     printf ("Usage: %s nn", argv [0]);     return -1;   }   else   {    n = atoi (argv[1]);    printf ("Factorial of %d is %d.n", n, factorial (n));    }   return 0; } ----------------------- 利用如下的命令可编译生成可执行文件,并执行程序: $ gcc -o factorial main.c factorial.c $ ./factorial 5 Factorial of 5 is 120.   GCC 可同时用来编译 C 程序和 C++ 程序。一般来说,C 编译器通过源文件的后缀名来判断是 C 程序还是 C++ 程序。在 Linux 中,C 源文件的后缀名为 .c,而 C++ 源文件的后缀名为 .C 或 . cpp。但是,gcc 命令只能编译 C++ 源文件,而不能自动和 C+ + 程序使用的库连接。因此,通常使用 g++ 命令来完成 C++ 程序的编译和连接,该程序会自动调用 gcc 实现编译。假设我们有一个如下的 C ++ 源文件(hello.C): #include
void main (void)
{
  cout << "Hello, world!" << endl; } 则可以如下调用 g++ 命令编译、连接并生成可执行文件: $ g++ -o hello hello.C $ ./hello Hello, world! **********************gcc/egcs 的主要选项********* gcc 命令的常用选项 选项 解释 -ansi 只支持 ANSI 标准的 C 语法。这一选项将禁止 GNU C 的某些特色, 例如 asm 或 typeof 关键词。 -c 只编译并生成目标文件。 -DMACRO 以字符串“1”定义 MACRO 宏。 -DMACRO=DEFN 以字符串“DEFN”定义 MACRO 宏。 -E 只运行 C 预编译器。 -g 生成调试信息。GNU 调试器可利用该信息。 -IDIRECTORY 指定额外的头文件搜索路径DIRECTORY。 -LDIRECTORY 指定额外的函数库搜索路径DIRECTORY。 -lLIBRARY 连接时搜索指定的函数库LIBRARY。 -m486 针对 486 进行代码优化。 -o FILE 生成指定的输出文件。用在生成可执行文件时。 -O0 不进行优化处理。 -O 或 -O1 优化生成代码。 -O2 进一步优化。 -O3 比 -O2 更进一步优化,包括 inline 函数。 -shared 生成共享目标文件。通常用在建立共享库时。 -static 禁止使用共享连接。 -UMACRO 取消对 MACRO 宏的定义。 -w 不生成任何警告信息。 -Wall 生成所有警告信息。