asen's Blog

Happy coding

Linux 为何对病毒免疫

 

申明 1:为降低文本输入量,本文所言及 Linux,皆指 Gnu/Linux。
申明 2:本文主要内容取自 “南京大学小百合站一个Linux病毒艰辛短暂的一生》”

可能不少人持这样一种观点,认为 Linux 病毒少是因为Linux不像Windows那么普及,其实这种观点很早已经被人批驳过了,一个最有力的论据是:如果写病毒的人写 Windows 病毒是因为 Windows 用户多而因此破坏性大,那么 Internet 上大多数服务器都是基于 Unix/Linux 的,攻击这些服务器,破坏性岂不是更大么?如果有时间,可以阅读一下欧盟的一份有关 Windows vs Linux 安全性的报告:
http://www.theregister.co.uk/security/security_report_windows_vs_linux/

对一个二进制的 Linux 病毒,要感染可执行文件,这些可执行文件对启动这个病毒的用户一定要是可写的。而实际情况通常并不是这样的。实际情况通常是,程序被 root 拥有,用户通过无特权的帐号运行。而且,越是没有经验的用户,他拥有可执行文件的可能性就越小。因此,越是不了解这种危险的用户的主目录越不适合病毒繁 殖。

即使这个病毒成功地感染了这个用户拥有的一个程序,由于这个用户权限受限,它进一步传播的任务也会非常困难(当然,对于运行单用户系统的 Linux 新手,这个论证可能不适用。这样的用户可能会对 root 帐户比较粗心)。

Linux 网络程序构建地很保守,没有使现在 Windows 病毒如此快速传播变的可能的高级宏工具。这并不是 Linux 的固有特征;它仅仅是两种用户基础的不同和这种不同导致的在这两种市场中的成功产品的不同的反映。通过观察这些问题学到的经验也会被用到将来的 Linux 产品中。

Linux的应用软件和系统软件几乎都是开源的。这对病毒有两方面的影响。首先,病毒很难藏身于开源的代码中间。其次,对仅有二进制的病毒,一次新 的编译安装就截断了病毒一个主要的传播途径。虽然 Linux 发行商也提供大量的二进制软件包,但是用户大都是从发行商提供的可靠的软件仓库中下载这些软件包,大都具有 md5 验证机制,安全性极高。

这些障碍每一个都是病毒成功传播的一个重要阻碍。然而当把他们放在一起考虑的时候,基本的问题才浮现出来。

一个计算机病毒,像生物病毒一样,要想传播开来,其繁殖速度必须超过其死亡(被消灭)的速度。上面提到的障碍有效地降低了 Linux 病毒的繁殖速度。如果它的繁殖速度降到取代原来种群所需要的阈值之下,那么这个病毒的厄运从一开始就注定了--甚至在潜在受害人意识到它们之前。

我们没有看到一个真正的 Linux 病毒疯狂传播,原因就在于存在的 Linux 病毒中没有一个能够在 Linux 提供的敌对的环境中茁壮成长。现在存在的 Linux 病毒仅仅是技术上的好奇;现实是没有能养得活的 Linux 病毒。

当然,这并不意味着永远没有 Linux 病毒能够流行。然而它确实意味着一个成功的 Linux 病毒要在不适合生存的 Linux 生态系统中存活下来必须是精心制作并具创新的。

 

 

世界汽车标志大全

宾利轿车标志
  宾利汽车始创人——华尔德·奥云·宾利

   一代传奇人物、世界顶级宾利豪华轿车的创始人W.O.Bentley生于伦敦。

   宾利汽车以其独有的性能表现建立起自己的品牌,这种传统一直延续到现在。它深深地渗透到汽车的手工艺设计当中,至今宾利的绝妙之处仍是大扭矩小转速以及 豪华、奢侈、放松、自如的感觉。宾利除了与劳斯莱斯一样,具有巧夺天工的造车工艺及完美无暇的品质外,最重要的区别是宾利代表着优良的赛车传统,其出类拔 萃的性能表现、精练而雷霆万钧的引擎动力,能缔造出真正无与伦比的英式豪华驾驶乐趣。

   宾利轿车标志是以公司名的第一个字母“B”为主体,生出一对翅膀,似凌空翱翔的雄鹰。一直以来,宾利在汽车制造业中代表着千锤百炼的工艺与优越显赫的地 位,为车中翘楚,一向为皇室贵胄不二之选。由于每辆车均以手工制作、装嵌而成,工艺精雕细琢,巧夺天工、处处秉承着英国的传统优良造车艺术,享有极崇高的 地位。

   “劳斯莱斯”和“宾利”两种车实际上近乎同一种车,只是根据不同的用户将两种车做的各有特色,魅力不同而已。宾利轿车是为了满足富有的年轻人,追求高速驾驶、寻求刺激的需要。

   秉承英国的传统造车艺术

   现时所有劳斯莱斯及宾利均生产自英国的克鲁郡(Crewe),并由经验丰富的工匠以手工装嵌而成。绝大部分的工匠都有超过30年以上的丰富经验,造车技 术代代相传,工艺千锤百炼、其品质完美无暇,处处流露出英国传统造车艺术的精髓:精练、恒久及钜细无遗。在这个全世界著名品牌汽车的生产节拍都以秒计算的 时代,劳斯莱斯和宾利的生产线每分钟只移动6英寸,每辆汽车一般需要花上16至20星期才能完成整个制造过程。正如劳斯莱斯的创始人之一亨利·莱斯说 过:“车的价格会被人忘记,而车的质量却长久存在。”每部劳斯莱斯和宾利汽车的内饰都是采用精挑细选的上等木材和高档皮革制作而成,而车内地毯则选用优质 耐用的著名英国品牌威尔顿(Winlton)纯羊毛地毯制成。所有车身油漆都经过15次喷漆处理,光可鉴人。品质严谨程度堪称世界汽车生产商之冠。此外, 劳斯莱斯和宾利汽车从车身颜色、车厢木饰、皮革以至地毯均可应不同的尊贵顾客所需要而度身订造,真正满足客户个性化的需求,尽现个人风格与品味。

   木饰

   备有胡桃木、鸟眼枫木、橡木及黑木等基本类型。每一块木料均经过工匠们严格挑选,每辆汽车内的仪表板及车厢木饰、无论颜色及纹路都完全一致,拼缝接口处 几乎看不出接缝的痕迹,再经工匠用最原始的方法蜂蜡打磨8次,令表面光滑如镜,天衣无缝。整个制作过程大概需要两个星期才能完成。

   地毯

   全车地毯选用优质耐用的英国品牌威尔顿(Wilton)纯羊毛地毯制成,并配备12种颜色以供选择。

   皮革

   座椅和内饰的皮革备有19种不同颜色以供搭配,所有皮革均采用英国(Connolly)甲级优质真皮,经过多道工序加工处理,不但光滑柔软且防水耐磨。

   车身油漆

   则多至22种不同颜色以供客户选择,所有车身经过15次喷漆处理,光可鉴人。品质严谨程度堪称世界汽车生产商之冠。



奔驰:1873年,担任Dentz发动机厂技术部主任的哥特里布 · 戴姆勒,在给妻子寄去的明信片上,信手画上了一颗三叉星以代表他当时的住处,并特别声明:总有一天,这颗吉祥之星将会照耀我毕生的工作。1890年,这颗 吉祥星开始用于新成立的戴姆勒公司的产品上。1899年3月,艾米 · 耶里耐克(当时担任奥地利驻匈牙利总领事和戴姆勒汽车公司管理委员会的委员)驾驶以女儿梅赛德斯(温文而雅之意)命名的汽车,在"尼斯之旅"汽车大赛上一 举夺魁后,他建议戴姆勒公司生产的汽车都用"梅赛德斯"来命名,戴姆勒欣然同意。1901年,由威廉·迈巴赫设计"Simplex"牌汽车首次采用"戴姆 勒·梅赛德斯"作为商标。 1909年,戴姆勒公司将一颗大三叉星和四颗小三叉星及"梅赛德斯"置于圆环之中;1923年,又将三叉星置于发动机散热器之上。从此,这颗吉祥的三叉星 迎风傲立,气度高雅,煞是夺目。


宝马:卡尔·拉普和马克斯佛里茨在慕尼黑创建了巴依尔飞机公司;1917年,该公司改为依尔发动机有限公司,这就是巴依尔公司简称(BMW)的来 历;1918年公司改为现在的名称――宝马汽车公司。 "宝马"曾译为巴依尔。由于宝马公司是以生产航空发动机开始创业的,所以商标中的蓝色为天空,白色为螺旋桨,这是"宝马"商标的第一大特点;第二大特点就 是"宝马"汽车的散热器(车鼻)中间那两个金属方框进气格栅。 BMW(宝马)是公司全称"Bayerische Motorenwerke AG"的缩写。"宝马"采用了内外双圆圈的图形,并在双圈圆环的上方,标有BMW字样的商标。整个商标就像蓝天、白云和运转不停的螺旋桨,喻示宝马公司渊 源悠久的历史,既象征该公司过去在航空发动机技术方面的领先地位,又象征公司的一贯宗旨和目标:在广阔的时空中,以最新的科学技术、最先进的观念,满足顾 客的最大愿望,反映了公司蓬勃向上精神和日新月异的新面貌


劳斯莱斯:劳斯莱斯公司的创始人,当初也想不到凭着一列火车把两人连系在一起,并成了今天世界汽车工业最有名的高级轿车公司之一。 90年前,经 销法国汽车的商人查尔斯·劳斯(皇家贵族)与制造起重机和汽车的工程师亨利·莱斯在同乘一列火车时邂逅,并一见如故,他们便一同北上去了曼切斯特。当天, 在午餐中两人畅谈人生和事业,下午又一同驾驶汽车游览曼切斯特,从而更加深了之间的友谊。劳斯随即与莱斯达成协议,由莱斯负责生产汽车,劳斯负责营销,并 给予莱斯制造的汽车在市场上的独家优惠。同时,他们给汽车起名为ROLLS-ROYCE,曾译为罗尔斯-罗伊斯,后又译为劳斯莱斯

法拉利:法拉利是世界上最闻名的赛车和运动跑车的意大利生产厂家。它创建于1929年,创始人是世界赛车冠军,划时代的汽车设计大师恩佐·法拉利。菲亚特 公司拥有该公司50%股权,但该公司却能独立运营。法拉利汽车大部分采用手工制造,因而产量很低。每年4,000辆左右。


保时捷:波尔舍研究设计发展公司是德国较大的汽车研究和设计公司,成立于1930年,创建人是著名的天才设计大师费迪南德·波尔舍博士 (FERDINAND PORSCHE)。该公司是承担各汽车公司和政府委托的各种研究课题和设计工作,也接受国外有关汽车公司委托的设计、研究和试验任务。波尔舍博士的第一件 作品就是获得极大成功的"甲壳虫"轿车。   
   第二次世界大战后,他和儿子费利·波尔舍制作了356运动车,之所以命名为356,是因为波尔舍作了第356次更改设计方案,该车在车赛中一举成功,取 得桂冠。60年代开始生产911型运动车,其时费迪南德·波尔舍已去世,主要是他的儿子和孙子亚历山大·波尔舍继承了他的事业。在1967年一次5天的赛 事中,一辆911试验车打破了16项世界纪录,被人称为"顶级的波尔舍(保时捷)",由此,保时捷运动车名威天下。 
   保时捷汽车的商标选用了公司所在斯图加特市的盾形市徽,中间的黑马表明这里早在16世纪就以产名马而闻名,上有斯图加特(STUTTGART)字样,背 景上的鹿角,告诉人们这里也曾是狞猎的场所,金黄的底色则表示成熟了的麦子,黑红相间的条纹分别代表肥沃的土地和人们的智慧。公司名称在上方最显眼的地 方,勾划了一幅美丽的田园景色,象征着公司辉煌的过去和美好的未来

林肯:林肯大陆(LINCOLN CONTINENTAI)是林肯 · 默寇利部于1939年首推的名牌豪华车型。该车型显示林肯 · 默寇利部生产的高级轿车技术无懈可击,乃豪华车中的佼佼者,被称为福特汽车公司的传世佳作。 林肯(LINCOLN)轿车是以美国第16任总统的名字阿伯拉罕 · 林肯命名的汽车,借助林肯总统的名字来树立公司的形象,显示该公司生产的是顶级轿车。其商标是在一个矩形中含有一颗闪闪放光的星辰,表示林肯总统是美国联 邦统一和废除奴隶制的启明星,也喻示福特 · 林肯牌轿车光辉灿烂

凯迪拉克:凯迪拉克商标是凯迪拉克家族在古代的宗教战争中,使用的"冠"和"盾"型的纹章图案。"冠"上的七颗珍珠表示凯迪拉克家族具有皇家贵族血统,即 凯迪拉克家族是贵族。"盾"象征着凯迪拉克军队是一支金戈铁马、英勇善战、攻无不克、无坚不摧的英武之师。 " 盾"被两根深褐色棒平分为四个等分。第二和第三等分有两根相互交叉的褐色棒,表示十字军战士在遥远战场上富有骑士般的勇猛。第一和第四等分中各有三只黑色 的鸟,这两等分又被黑色棒一分为二,并把三只相同的鸟分开,两只在上,一只在下。按照当时的风俗,没有腿和嘴的鸟,如果以三只同时出现(即三位一体),就 表示神圣。这些鸟还表示大胆和热情的基督教武士和智慧、富有、聪敏的头脑和完美的品德。 "盾"中的各种颜色也有深刻的含义, 它们分别表示婚姻、土地和丰收。 如红色表示勇猛和赤胆;银色表示婚姻、纯洁、博爱和美德;黄色表示丰收和富有;蓝色表示创新和探险;黑色表示土地。 凯迪拉克商标是凯迪拉克家族在古代的宗教战争中,使用的"冠"和"盾"型的纹章图案。"冠"上的七颗珍珠表示凯迪拉克家族具有皇家贵族血统,即凯迪拉克家 族是贵族。"盾"象征着凯迪拉克军队是一支金戈铁马、英勇善战、攻无不克、无坚不摧的英武之师。 " 盾"被两根深褐色棒平分为四个等分。第二和第三等分有两根相互交叉的褐色棒,表示十字军战士在遥远战场上富有骑士般的勇猛。第一和第四等分中各有三只黑色 的鸟,这两等分又被黑色棒一分为二,并把三只相同的鸟分开,两只在上,一只在下。按照当时的风俗,没有腿和嘴的鸟,如果以三只同时出现(即三位一体),就 表示神圣。这些鸟还表示大胆和热情的基督教武士和智慧、富有、聪敏的头脑和完美的品德。 "盾"中的各种颜色也有深刻的含义, 它们分别表示婚姻、土地和丰收。 如红色表示勇猛和赤胆;银色表示婚姻、纯洁、博爱和美德;黄色表示丰收和富有;蓝色表示创新和探险;黑色表示土地。


别克:别克(BUICK)商标中那形似"三利剑"的图案为其图形商标,它是别克分部的标志。它被安装在汽车散器格栅上。图中那三把颜色不同(从左到右: 红、白、蓝三种颜色)并依次排列在不同高度位置上的利剑,给人一种积极进取、不断攀登的感觉;它表示别克分部采用顶级技术,刃刃见锋;也表示别克分部培养 出的人才个个游刃有余,是无坚不摧、勇于登峰的勇士。 1903年5月19日,大卫 · 别克在布里斯科兄弟的帮助下创建美国别克汽车公司,但不久公司就陷于了困境。后在威廉 · 杜兰特的资助下,公司才开始兴旺起来,并创造出汽车年产量居美国第一位的业绩。1908年,以别克汽车公司为中心,成立了美国通用汽车公司。当通用汽车公 司扩大后,别克部成为通用汽车公司的第二大部门。它要设计制造中档家庭轿车。别克汽车的销量在通用汽车公司内第三位。

凌志:90年代,丰田汽车公司推出的"凌志"牌高级轿车,就像一匹"黑马",以与众不同的风格跃入人们的眼帘,以不同凡响的商标"L"标新立异。 "凌志"商标由图形商标和文字商标两部分组成。它的图形商标不是采用常见的三个椭圆相互嵌套形式,而是在一个椭圆中镶嵌英文"Lexus"的第一个大写字 母"L",并被镶在散热器正中间;车尾标有文字商标"Lexus",喻示该车驰骋在世界各地的道路上。 70年代,丰田公司在美国作电视广告时, 总是以一副亲切而谦逊的面孔出现在观众面前。90年代,丰田公司却一改过去那和善的面孔,如在一则电视广告中,画面是凌志LX450汽车爬上了摩天大楼, 当爬到第40层时"定格",广告词出现"凌志LX450汽车无所不能,而任何车都不及凌志!"出乎人们所料,清高自大的美国人,不仅买丰田公司的帐,而且 还为其捧场,使"凌志"车在美国"火"了起来。就连向来看低日本车的欧洲汽车评论界,也赞不绝口,称之为日本汽车的"里程碑"。

丰田: 1933年,丰田喜一郎在日本爱知县丰田市创建丰田自动织机制作所,1937年8月成立丰田汽车公司,并用自己的姓氏作为公司的名称和商标。早期的日本" 丰田"牌汽车商标, 是将"TOYOTA"拼音的第一个大写字母"T"标在发动机散热器格栅上,而将公司名称的拼音形式"TOYOTA"标在车头或车尾上。 90年代,"丰田"开始使用新商标,新商标是将三个外形近似的椭圆形环巧妙地组合在一起,每个椭圆都是以两点为圆心绘制的曲线组成,它象征用户的心与汽车 厂家的心是连在一起的,具有相互信赖感。而且使图案具有空间感,并将拼音"TOYOTA"字母寓于图形商标之中。 大椭圆中的两个椭圆垂直交叉恰好组合成一个"T"字, "T"代表丰田汽车公司;大椭圆表示地球,中间的"T"字与外面的椭圆重叠, 使"T"字最大限度地占据了椭圆空间,使"T"更加突出,喻示丰田汽车走向世界

欧宝:欧宝"曾译为奥贝尔,取自创始人阿德姆·奥贝尔的姓氏。商标是由图案和文字两部分组成。图案是代表公司的技术进步和发展,又像闪电一样划破长空,震 撼世界,喻示汽车如风驰电掣,同时也炫耀它在空气动力学方面的研究成就;文字"OPEL"是创始人的姓氏。 1862年,阿德姆·奥贝尔(Adan Opel)在吕塞尔海姆创建了欧宝公司,公司最初生产缝纫机、自行车。1897年开始生产汽车,1924年, 公司建成德国第一条生产汽车的流水线,使汽车产量猛增,在德国廉价车领域独占鏊头。另外,奥贝尔家族可能对当时的德国政府存在顾虑, 于1929年将公司80%的股份卖给美国通用汽车公司,从此, 欧宝汽车公司成为美国通用汽车公司在德国的子公司。

现代:1947年,郑周永创建现代汽车公司,经50多年的发展,它已成为韩国最大的汽车生产厂家,并进入世界著名汽车大公司行列。其商标是在椭圆中采用斜 体字"H","H"是现代汽车公司英文名"HYUNDAI"的第一个大写字母。 "现代"首先体现了"2000年在世界上腾飞的现代汽车公司"这一概念;其次还象征现代汽车公司在和谐与稳定中发展。商标中的椭圆即代表汽车的方向盘,又 可以看作是地球,与其间的H结合在一起恰好代表了现代汽车遍布全世界的意思。

大众:大众汽车公司的德文Volkswagenwerk,意为大众使用的汽车;图形商标是德文Volkswagenwerk单词中的两个字母V和W的叠 合,并镶嵌在一个大圆圈内,然后整个商标又镶嵌在发动机散热器前面格栅的中间。图形商标形似三个"V"字,像是用中指和食指作出的V形,表示大众公司极其 产品"必胜-必胜-必胜"。文字商标则标在车尾的行李箱盖上,以注明该车的名称。大众商标简捷、鲜明、引人入胜,令人过目不忘。 大众汽车公司是德国最年轻、??名的产品是"甲壳虫"式轿车(由波尔舍设计),该车在80年代初就已生产了2000万辆。它启动了大众公司的第一班高速列 车,紧随其后的马球、高尔夫、奥迪、帕萨特、桑塔纳等也畅销全世界。


雪铁龙:1900年,安德烈·雪铁龙发明了人字形齿轮。1912年,安德列·雪铁龙开始用人字形齿轮作为雪铁龙公司产品的商标。后来,雪铁龙曾组织过横穿 非洲大陆和横越亚洲大陆的两次旅行,使雪铁龙汽车名声大振。 法国人生性开朗,爱赶时髦,喜欢新颖和漂亮,"雪铁龙"轿车就表现了法兰西这种性格,每时每刻都在散发着法国的浪漫气息。

菲亚特:1899年,阿涅利在意大利西北城市都灵创建菲亚特公司,开始采用盾型商标;1906年,开始采用公司的全称四个单词的第一个大写字 母"F.I.A.T"为商标。"FIAT"在英语中具有"法令"、"许可"的含义,因此在客户的心目中, 菲亚特轿车具有较高的合法性与可靠性,深得用户的信赖。1918年,公司决定不用大写字母或在字母间不加标点书写。 1921年,曾经使用过圆形商标;1931年, 开始使用在方形中含有 "FIAT"字样的商标。1980年开始使用五根短柱斜置平行排列的新商标。 菲亚特垄断着意大利全国年总产量的 90%以上的汽车生产量,这在世界汽车工业中是罕见的。 因此, 菲亚特被称为意大利汽车工业"寒暑表",菲亚特牌汽车被喻为"意大利车"。 "菲亚特"轿车的紧凑楔形造型、线条简练、优雅精巧、极富动感、充满活力,处处显现拉丁民族那热情、浪漫、机敏、灵活的风格。所以,"菲亚特"轿车造型总 是引导世界汽车造型的潮流。

三菱: 三菱(Mitsubishi)商标是于1917年注册的三瓣菱形钻石图案。三菱体现了公司的三个原则:承担对社会的共同责任、诚实与公平、 通过贸易促进国际谅解与合作。 1870年,出身望族的岩崎弥太朗创建了九十九商社, 1873年改称为三菱商会;在三菱商会里有岩崎弥太朗的三个挚友, 其名字都有"川"字,因此三菱商会使用了"三菱"文字商标; 图形商标的三瓣菱形钻石图案,是根据岩崎家族海运船只上的标识和藩王内家的三帕叶标识演变而来的。 从此,三菱集团中的所有成员都使用这个商标。 1970年,三菱汽车工业公司从三菱集团中独立出来, 该公司生产的轿车和越野吉普车(三菱Jeep),品质优良,性能超群,使三菱商标知名全世界。

雪佛莱:雪佛莱(Chevrolet)属于通用汽车公司的一个分部。该部除生产大众化车型之外,还生产各种运动型跑车。 "雪佛莱"取自原雪佛莱汽车公司创始人路易斯·雪佛莱(瑞士车手)的姓氏;图标商标是抽象化了的蝴蝶领结,象征雪佛莱轿车的大方、气派和风度。 自1915年雪佛莱部生产出第一辆汽车起,其产品销量一直在美国名列前茅,1940年就累计生产汽车1500万辆(当时通用公司累计生产汽车2500万 辆)。因此,雪佛莱汽车被称为"地道美国车",与美国人的形象紧密相连的"棒球、热狗、苹果派"一样荣登排行榜(1975年)。自1984年起,雪佛莱汽 车已经十多次获得美国《汽车时尚》杂志年度"最佳轿车"奖。

福特:1903年,亨利 · 福特创建福特汽车公司,公司名称取自创始人亨利 · 福特的姓氏。福特生前十分喜爱动物, 他经常忙里偷闲访问动物专家,读有关动物的书籍和报纸,他在这个领域也有较深的造诣。1911年,商标设计者为了迎合亨利 · 福特的嗜好,就将英文"Ford"设计成为形似奔跑的白兔形象, 一博福特的欢心。 福特汽车公司的商标是蓝底白字的英文"Ford"字样,被艺术化了的"Ford"形似活泼可爱、充满活力、美观大方的小白兔。"Ford"犹如在温馨的大 自然中,有一只可爱,温顺的小白兔正在向前飞奔, 象征福特汽车奔驰在世界各地,令人爱不释手。1908年,福特T型诞生, 为"装在汽车轮上的美国"立下了不朽功勋。因此,福特汽车公司名扬天下,福特本人也成为世纪名人。 在美国独立200周年期间,为了配合这了个有纪念意义的节日,美国最大的通讯社――美联社, 在对这200 年中的20件大事进行的全美民意测验中,福特汽车公司名列第十,可与后来的"阿波罗"飞船登月、原子弹爆炸媲美

克莱斯勒:如果你有幸在1924年车展期间住进纽约的卡摩多大酒店,你将有机会亲眼目睹克莱斯勒six闪亮登场的盛况。 这是一款马力强劲、价格便宜的大众型轿车,它装在水箱盖上醒目的银色飞翔标志和刻在水箱罩上的金色克莱斯勒印章,标志着汽车工程与汽车设计从此进入了一个 崭新的时代。接下来的几年里,这种飞翔标志几乎出现在所有的克莱斯勒小轿车上。在19311934年生产的车型上,你还能看到飞翔标志的后面雕刻着一只栩 栩如生的待飞的睽羚,十分精制可爱。克莱斯勒公司整个三十年代直到五十年代后期,都一直沿用这种安装在发动机罩上的飞翔装饰。1951年为庆祝新型180 马力,331.1CID半球型V8发动机的诞生,这个标志被改为圆形,曾经风靡一时。但随着公众喜好的变化,1957年以后,该公司不再使用此标志。 1995年银色的飞翔标志和金色的徽章又重新被采用,两年之后,这两种图案被融合在一起。今天,这精致的徽章不仅装饰着公司生产的每一辆车,更成为汽车工 程与汽车设计辉煌历史的标记。

吉普:切诺基·吉普车(Cherokee Jeep)是克莱斯勒公司的"鹰·吉普部"生产的越野车,"切诺基"取自美洲印第安部族切诺基土人。他们世代居住在山区,由于生活和狩猎的需要,他们擅长 在山地攀行,以此表示"切诺基"汽车能攀过岩石、涉过泥沙,征服任何艰难险阻,到达胜利的彼岸。由于越野吉普车具有功率大、通过能力强、底盘坚固,能配合 车主完成各项任务,因此称吉普(Jeep)为有生命的汽车,它的性别是"雄性"。  

通用:"GM"是美国通用汽车公司名称的缩写,取自通用汽车公司(General Motor Corporation)英文全称的前两个单词的第一个大写字母。各车型商标都采用了公司下属分部的标志。 1902年报9月16日,威廉·杜兰特分明建了早期的通用汽车公司,总部设在美国的密执安州底特律城。后经威廉·杜特兰的几番努力,先后联合或兼并了别 克、凯迪莱克、雪佛莱、奥兹莫比尔、奥克兰、旁蒂克、休斯和EDS电脑等公司,成立了美国通用汽车公司,使原来的各小汽车公司成为该公司的分部,从而使公 司下属的分部达30余个之多。其中较知名的分部有:别克分部、奥兹莫比尔分部、旁蒂克分部、雪佛莱分部、凯迪莱克分部等。

本田:本田公司在80年代成立了商标设计研究组,从来自世界各地的2500多件设计图稿中,确定了现在的三弦音箱式商标,也就是带框的"H",图案中的H 是"本田"拼音Honda的第一个字母。这个标志体现出技术创新,职工完美和经营坚实的特点,同时还有紧张感和可以放松一下的轻松感。

奥迪:奥迪汽车公司现为大众汽车公司的子公司,总部设在德国的英戈尔施塔特,年产轿车45万辆左右。主要产品有A3 系列、A4系列、A6系列、A8系列和敞篷车及运动车系列等。奥迪轿车的标志为四个圆环,代表着合并前的四家公司。这些公司曾经是自行车、摩托车及小客车 的生产厂家。

红旗:1958年12月至1959年9月,一汽以第一台"红旗"车为基础,经四轮改型设计与试验,生产出第一代定型产品CH72"红旗"牌高级双排座轿 车,并一次试制10辆送北京参加国庆10周年庆典活动。同时利用CA72型改制成检阅车供天安门阅兵式使用。1960年初,一汽开始以CA72型为基础改 制了三排座型的"红旗"轿车,在1965年国庆前夕定型生产出三排座型的CA770"红旗"高级轿车,1965年9月,第一辆"红旗"样车被送到北京,彭 真在东西长安街上试坐了一下,对这部车的后座可移动表示特别满意。经国家验收定型为中国的高级轿车。

东风:东风汽车公司(原二汽)始建于1969年,是依靠我国自己的力量, 采取"聚宝"方式设计、建设和装备起来的现代化汽车生产企业,也是国家明确重点支持的三大汽车集团之一。

阿尔法罗米欧:阿尔法罗米欧是能与宝马相提并论的高性能跑车,既具有操纵自如安全稳定的特性又有集浪漫与趣味于一身的外型,是意大利名车之一。车徽标志是 沿用中世纪时米兰的领主维斯康泰公爵的家徽。标志左边的十字部分来源于十字军从米兰向外远征的故事,右边刻绘了一条正在吞食撒拉逊人的蛇,它象征着领主维 斯康泰的祖先击退使城市人民遭受苦难的"巨蛇"的传说。这个标志也是意大利米兰市的市徽

莲花:莲花品牌是英国绅士柯林·查普曼的杰作。查普曼是典型的英国绅士,小胡须总是修剪得整整齐齐。这样的绅士,电影里描述过不少,在当今的英国却不多见 了。战后数十年间,这位英国工程师的名字对世界汽车运动影响巨大。他统领下的莲花车队自1958年以来先后7次在F1车赛中夺冠,并创出了多种名垂青史的 优秀车型。查普曼从零开始,在汽车运动的狂热驱使下,亲手制造自己所心仪的赛车,进而在汽车制造与竞赛两方面都创造了辉煌业绩。这可算世界汽车史上最美的 一段佳话

道奇:道奇牌轿车素以价廉和大众化称著, 颇受欢迎. 轿车型号有: 蝰蛇(Viper), 无畏(Interpid), 隐形(Stealth), 小精灵(Spirit), 影子(Shadow), 霓虹(Neon), 小马(Colt) 等. 约翰. 道奇和霍勒斯. 道奇兄弟曾是亨利. 福特的股东和董事, 他们的工厂起初为福特汽车生产零件. 由于福特的成功, 道奇兄弟亦因此获益, 并开始 发展自已的公司, 成为福特的对手. 道奇兄弟1919 年脱离福特公司. 后来, 道奇成为克莱斯勒汽车公司的骨干企业.

土星:1985年通用公司决定新建土星分部,企图开发先进的土星牌轿车以抵御外国轿车大规模进入美国市场。分部设在田纳西州春山市,是通用公司唯一从内部 建立起来的公司。主要产品分为豪华轿车SL、旅行轿车SW和跑车SC。   土星(Saturn)是通用汽车公司最年轻的品牌,不存在背历史包袱,不存在有损害传统的顾忌,以市场需求为准绳,创新立异轻装上阵,这就是土星车的 特点。土星的初衷就是抵御外国车进口美国市场,它必然要在外观上和性能上有所创新,在价格上有优势。在1999年中,美国一家市场调研咨询公司作"买什么 车最值"为题,对4.7万新车买主进行的询问调查中,土星SC跑车排在首位。   通用汽车公司创造了土星这一品牌,以"对付日本的挑战"。虽然并非如所宣布的那样,由此便在汽车制造方面出现了一场革命,但是土星车确实主宰了美国价 格便宜的紧凑型车市场

铃木:铃木轿车标志图案中的"S"是铃木Suzuki的第一个字母,这种设计给人以有力量的感觉,象征着发展中的"铃木 "。   铃木公司成立于1920年,1952年开始生产摩托车,1955年开始生产汽车。   铃木株式会社包括7个工厂,汽车生产集团在湖西工厂和磬田工厂,主要生产微型及小型轿车、面包车、吉普车和货车;相良工厂为汽车发动机厂;丰川工厂负 责摩托车的生产;总社工厂负责摩托车发动机的制造。

马自达:马自达汽车公司创立于1920年,1931年正式开始在广岛生产小型载货车,60年代初正式生产轿车,自1981年到2002年,马自达已累积生 产了3,500多万辆各种汽车。在九十年代之前,马自达汽车公司始终在日本国内排名仅在丰田、日产之后,也是世界知名的日本汽车品牌之一。  自2000 年开始,马自达公司通过实施"新千年计划",使公司的发展进入了一个新的阶段。2002年,马自达公司推出了马自达6(MAZDA6)、千里马2等一系列 新车型,在世界各地都取得了不俗的销售业绩。

美洲豹:美洲豹汽车公司原是利兰汽车公司的分部,素以生产豪华的美洲豹(又称捷豹)运动车而闻名于世。  
  1961年,美洲豹公司收购了戴姆勒公司,仍保留戴姆勒品牌,故其商标不变。70年代以后,美洲豹公司设备陈旧,技术落后,管理不善,质量下降,销量大减,于1989年被美国福特汽车公司兼并,成为福特生产豪华轿车的重要基地。  
  美洲豹汽车的名字起源,则可追溯到一九三七年。该年六月SS汽车公司正式接收了Sunbeam(Wolverhampton)汽车公司。当时,里昂斯 爵士十分希望能把汽车名为Sunbeam,因为Sunbeam曾于多次的世界赛车中取得冠军,可谓"胜利]的标志。可惜,公司内部出现了一些问题。最后, 被迫放弃使用Sunbeam作为公司的名字。里昂斯爵士最后拣选了一个在各种语言中都发音清脆的名字-Jaguar,它是根据第一次世界大战的一种飞行机 器而命名。美洲豹又称捷豹,香港人还称"积架",缘由英文JAGUAR的音译。

标致:标致汽车公司是世界十大汽车公司之一,法国最大的汽车集团公司。创立于1890年,创始人是阿尔芒·标致。1 976年标致公司吞并了法国历史悠久的雪铁龙公司,从而成为世界上一家以生产汽车为主,兼营机械加工、运输、金融和服务业的跨国工业集团。标致汽车公司的 总部在法国巴黎,汽车厂多在弗南修·昆蒂省,雇员总数为 l l万人左右,年产汽车220万辆。   标致公司创始之初以生产自行车和三轮车为主,1891年开始涉足汽车领域并取得成功。由于不断采用新技术,公司的产量与日俱增。到第一次世界大战前, 产量已超过法国所有的汽车生产厂家,达到一万两千辆。第一次世界大战中,阿尔芒·标致及时调整经营战略,使标致公司在战争中发展起来,1939年年产汽车 即达4.8万辆。标致公司的第二次大发展时期是二战后的50、60年代,汽车产量在20年间猛增十几倍,一跃成为法国第二大汽车公司。   1976年,标致公司以自己的经济实力收购了经营不善的雪铁龙公司60%的股份,从而扩充了自己的实力。汽车总产量超过雷诺汽车公司而居法国第一。标 致公司拥有92家国内公司和84家海外公司,海外公司以商业公司为主,工业公司不多,其中最大的海外工业公司有英国塔尔伯特和西班牙塔尔伯特汽车公司。   本世纪80年代,标致公司和中国合作在广州建立合资企业,将标致504、505型汽车输入到中国。标致汽车产品从微型到豪华型都有,最受欢迎的是中型 汽车。标致汽车的特点是寿命长质量好,它的205及309型汽车在历年的汽车拉力赛中独占鳌头。

起亚:起亚汽车公司成立于1944年,是韩国最早的汽车制造商。拥有完善的乘用车和商用车生产流水线,330万平方米厂房的牙山湾工厂和79万平方米的所下里工厂,具有年生产一百万辆汽车的生产力。产品已出口到130多个国家和地区。   起亚汽车公司隶属于起亚集团。

雷诺:世界十大汽车公司之一,法国第二大汽车公司。创立于1898年,创始人是路易·雷诺。而今的雷诺汽车公司已被收为国有,是法国最大的国营企业,也是世界上以生产各型汽车为主,涉足发动机、农业机械、自动化设备、机床、电子业、所、塑料橡胶业的垄断工业集团。  
雷诺公司第一次大发展是在一次世界大战中,它为军队生产枪枝弹药、飞机并设计出轻型坦克车,使雷诺公司大发战争财。战争结束后,公司转向农业机械和重 型柴油汽车生产,其柴油机核技术处于世界领先地位。二战期间,雷诺公司为德国法西斯效劳,为德国军队提供大量坦克、飞机发动机和其他武器。因而战争结束 后,雷诺公司被法国政府接管,路易·雷诺被逮捕。战后,在法国政府的支持下,是雷诺公司第二次大发展的时期。公司利用国家资本,兼并了许多小汽车公司,并 发挥了雷诺公司的技术潜力,开发出多品种汽车新产品。
由于雷诺集团本身有机床、自动化、电子分公司,因而雷诺的汽车厂机械设备非常先进,自动化程度很高。电子技术成果能较快地应用在汽车上,也使雷诺公司在汽车高技术上占有优势。
雷诺汽车公司汽车产品十分齐全,除小客车和载货车外,各种改装车、特种车应有尽有,在十大汽车公司也是独此一家。雷诺公司下分小客车、商用车、自动化设备以及工业产品四个部,统管国内外所有的子公司。
公司总部设在法国比杨古,董事长为乔治贝斯,雇员总数为22万人,全年可生产汽车205万辆。最新小汽车产品有雷诺Cilo、雷诺19、雷诺25型等。 雷诺汽车公司与日产汽车、三星汽车公司结成合作伙伴。

日产尼桑:日产汽车公司创立于1933年,是日本三大汽车制造商之一,也是第一家开始制造小型Datsun轿车和汽车零件的制造商。几十年来,日产汽车公司的技术与产品受到全世界消费者的喜爱。 
自从1972年第一辆公爵王出现在北京街头以来,日产汽车公司和与其产品一直是中国汽车工业发展历史的一部分。日产汽车公司通过在郑州设立合资公司生产 皮卡车,又与风神汽车合作,完成了风神蓝鸟II型的市场导入。除了在中国制造生产的事业以外,日产汽车公司还从日本进口风度、阳光等普及型汽车到中国。 1998年,在进口车中首获北京市废气排放标准合格证的"风度2000CC",博得了众多消费者的青睐和喜爱。
日产汽车公司承诺设计和制造满足客户需要的汽车,积极致力于解决在汽车社会中从交通安全到环境保护的有关问题。目前,装配有日产汽车公司自行开发的车 线自动保持辅助系统的汽车,混合燃料型汽车和电动汽车均已投入市场,燃料电池汽车也正在进行道路实验。日产汽车公司通过全球运作,在全世界17个国?世界 191个国家和地区销售汽车。

glPushMatrix && glPopMatrix 的作用

 

当你做了一些移动或旋转等变换后,使用glPushMatrix();
OpenGL 会把这个变换后的位置和角度保存起来。
然后你再随便做第二次移动或旋转变换,再用glPopMatrix();
OpenGL 就把刚刚保存的那个位置和角度恢复。

比如:
glLoadIdentity();
glTranslatef(1,0,0);//向右移动(1,0,0)
glPushMatrix();//保存当前位置
glTranslatef(0,1,0);//现在是(1,1,0)
glPopMatrix();//这样,现在又回到(1,0,0)

 

常见编译错误信息及说明(转载)

 

说明:以 下是根据用户做题过程中经常出现的编译错误整理的一份说明文档,列出了部分出现频率比较高的编译错误信息,及可能出现这种错误的原因,供用户参考,以便更 有针对性的解决测试中出现的问题。如果出现文档中没有提到的问题,可以做补充说明,我们也会及时更新这份文档,让它更加的全面,具体。

备注:错误信息中的数字代表出错的语句在程序中的哪一行。

Java编译错误信息及说明

1java:33: 不是语句

       解释:程序中出现了没有任何意义的字符(串),可能是无意中打出了没有任何意义的字符;

 

2java:34: 需要 ';'

       解释:某条语句没有以分号结束;

 

3java:36: 缺少返回语句

       解释:带返回值的函数缺少return语句;

 

4java:33: 不兼容的类型

       解释:运算符两边的数据类型不一致或者不能做隐式转换;

 

5java:36: 无法访问的语句

       解释:此语句永远不可能被执行,可能是此语句之前存在类似于whiletrue)的语句,导致此语句永远不可能被执行;

 

6java:34: 非法的表达式开始

       解释:有不符合语法规范的表达式出现;

 

7java:34: 找不到符号

       解释:使用了没有定义或没有引入的变量;

 

8java:33: 非法字符: \65307

       解释:在中文输入状态下输入了一些标点符号;

 

9java:18: 不可转换的类型

       解释:运算符两边的数据类型不一致或者不能做隐式转换;

 

10java:19: "else" 不带有 "if"

       解释:编译器找到else语句但是没有找到与之对应的if语句,可能是由于大括号没有成对出现;

 

11java:12: 可能损失精度

       解释:把高精确度类型的数据赋值给低精确度类型的变量;

 

12java:17: 需要 ')'

      解释: 括号没有成对出现;

 

13java:8: 可能尚未初始化变量 s

       解释:局部变量s没有赋初值

 

14java:7: 不可比较的类型:int Boolean

       解释:运算符两边操作数的数据类型不符合运算符的使用规范;

 

15java:6: 已在 isLeap(int) 中定义 year

       解释:变量year被重复定义;

 

16java:21: 字符字面值的行结尾不合法

       解释:程序语句的结尾不是java规定的结束符号,而是其他的符号;

 

17java:9: 需要 <标识符>

       解释:可能是由于用户指定了数据类型,但未指定该类型的变量名;

 

18java:8: 无法从静态上下文中引用非静态 变量 this

       解释:在静态方法中使用了非静态变量this;

 

19java:12: switch loop 外部中断

       解释:在非循环语句或非switch语句中使用了中断循环功能的语句break;

 

20java:21: 对于结果类型为 void 的方法,无法返回值

       解释:空返回值方法中出现了return语句;

 

21java:12: 需要数组,但找到 int

       解释:在应该出现数组的地方没有找到数组类型的变量,而是找到int类型的变量;

 

22java:13: 无法将 Node 中的 setData(int) 应用于 ()

       解释:一般情况下是方法调用时缺少了参数;

 

23java:5: 缺少数组维数

       解释:数组的定义过程中没有指定数组的维数;

 

24、进行语法解析时已到达文件结尾

       解释:一般情况是缺少{}造成的;

 

25、需要为 classinterface enum

       解释:一般情况下是多了{}造成的;

 

26、无法为最终变量 length 指定值

       解释:Lengthfinal类型的变量,值不能修改。

 

C语言编译错误信息及说明

1 在函数 transform 中:7: 错误:expected ; before { token

    解释:‘{’之前的某个语句缺少分号‘;’;

 

2 在函数 Insert_SqList 中:6: 错误:‘listsize 未声明 (在此函数内第一次使用)

    解释:‘listsize’这个变量未声明;

 

3 在函数 Hanoi 中:9: 错误:提供给函数 Hanoi 的实参太少

    解释:使用‘Hanoi’函数时,输入的实参不足;

 

4 在函数 max 中:3: 错误:‘a 被重新声明为不同意义的符号

    解释:在函数‘max’中,变量名a被重新声明为不同的变量类型;

 

5 在函数 EvaluateExpression 中:7: 错误:程序中有游离的 #

    解释:在函数‘EvaluateExpression’中,有不可识别的ASCII字符。一般这种情况是由于将代码复制进代码区时,有一些编译器不能识别的字符也被复制进去,导致的编译错误;

 

6 在函数 encode 中:6: 错误:被调用的对象 code 不是一个函数

    解释:在函数‘encode’中,调用‘code’时发现,code并未声明为一个函数;

 

7 在函数 prime 中:6: 错误:在 C99 模式之外使用 for 循环初始化声明

    解释:在函数‘prime’中,调用for循环的格式不符合C99规范。一般这类问题的错误格式为for(int i=0;i<...),由于C语言是要求你必须将变量在函数开始处进行声明,不支持在任意地方声明变量,所以正确的格式应该是int i;...; for(i=0; i<...);

 

821: 错误:expected identifier or ( before } token

    解释:在‘}’之前缺少一个标识符或‘(’;

 

9 在函数 CreatLink_L 中:14: 错误:赋值时类型不兼容

    解释:在CreatLink_L函数中,在赋值的过程中等号两侧的数据类型不兼容;

 

10、段错误

    解释:一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个指是由gdtr来保持的,他是一个48位的寄存器,其中32位是保存由它指向的gdt表,后13位保持对英语gdt的下表,最后3位包括了程序是否在内存中以及程序的在cpu中运行的级别,指向的gdt是由以64位为一个单位的表,在这张表中就保存着程序运行的代码段以及数据段的起始地址以及与此相应的段限和页面交换还有程序运行级别还有内存粒度等等的信息。一旦一个程序发生了越界访问,cpu就会产生相应的异常保护,于是segmentation fault(段错误)就出现了。出现段错误比较常见的情况是访问不安全的指针对象,即指针所指的值并非预期的值时,对指针所指向的对象进行操作。引发段错误后,程序执行终止,之后的代码将不再执行;

 

11在函数 ListInsert_Sq 中:12: 错误:‘SqList 没有名为 Length 的成员

    解释:在函数‘ListInsert_Sq’中,访问的结构体‘SqList’并没有‘Length’这个成员;

 

12在函数 ReverseList_Sq 中:11: 错误:数组下标不是一个整数

    解释:在函数‘ReverseList_Sq’中,访问数组成员时使用的下标不是整数。数组中标识每个元素都有一个整形下标,实际操作中是在数组基址的基础上加上这个整形下标得出存储对应数组元素地址,然后访问这个地址存储的数据;

 

13在函数 dec_to_oct 中:10: 错误:实参 1(属于 Push_Sq)类型不兼容

    解释:在函数‘dec_to_oct’中,调用函数Push_Sq时,输入的第一个实参类型与函数指定的第一个实参类型不兼容;

 

14在函数 GetTop 中:7: 错误:在非结构或联合中请求成员 top

    解释:在函数‘GetTop’中,在访问结构体或联合体内的成员变量‘top’时,发现访问的变量类型并非是一个结构体或联合体;

 

15在函数 score 中:5: 错误:case 标号不能还原为一个整常量

    解释:在函数‘score’中,case标号后跟着的表达式的值并非一个常量值。C语言对于switch语句的语法规定,要求switch后面的括号内为一个表达式。其值应与某一个case后面的常量表达式的值相对应,然后就执行此case后面的语句。这就意味着在case语句之后必须是一个整形常量,并且在C编译器中要求这个常量表达式的值还必须是一个整形值;

 

165:23: 警告:多字节字符常量 在函数 transform 中:

    解释:对字符变量赋值应对应一个字符常量,如char c = 'c'。如果将多个字符常量赋给一个字符变量时,如char c = 'abc',就引发多字节字符常量警告;

 

17在函数 transform 中:3: 警告:隐式声明与内建函数 strlen 不兼容

    解释:在程序中使用字符串函数strlen时未include<string.h>。我们的系统希望用户能自行实现一些功能代码,而不是调用库函数。必须要使用库函数的地方,我们会在调用后程序时导入include语句;

 

186: 错误:‘prime 重定义3: 错误:‘prime 的上一个定义在此

    解释:prime函数重定义;

 

19在函数 leap_year 中:3: 错误:赋值运算中的左值无效

    解释:赋值操作符‘=’的左端的值为左值(l_value),对应右侧的值为右值(r_value)。左值的要求是可寻址的(l的意思为can be though of as location,而不是left),一般是变量。右值的要求是可读的(r的意思为can be though of as "read" value,而不是right),可以是变量和常量;

 

20在函数 IntersectList_Sq 中:18: 错误:双目运算符 * 操作数无效

    解释:双目运算符‘*’的操作数不满足运算符的要求,或者说两个操作数不能发生指定的双目运算;

 

21在函数 ListInsert_DuL 中:8: 警告:初始化时将整数赋给指针,未作类型转换

    解释:初始化指针变量时,将整型数值赋给该变量,引发的类型不匹配警告;

 

22在函数 DerivationPolyn 中:7: 错误:无效的初始值设定

    解释:初始化变量时使用不兼容的右值来初始化左值,往往会引发这种错误;

 

23在函数 cmpterm 中:7: 错误:‘-> 的实参类型无效

    解释:‘->’的指向的结构体或联合体成员名不存在,即在访问指针指向的结构体类型中不存在的成员时,会引发这种错误;

 

24在函数 lineEdit 中:15: 警告:传递参数 2 (属于 Pop_Sq)时将整数赋给指针,未作类型转换

    解释:在函数‘lineEdit’中,调用函数Pop_Sq时要求第二个参数为指针变量,而输入的参数为整型;

 

25在函数 ListInsert_DuL 中:8: 警告:从不兼容的指针类型初始化

    解释:在函数‘ListInsert_DuL’中,为指针变量初始化值时,右值与指针类型不兼容;

 

26在函数 ReverseList_Sq 中:8: 错误:与 pa 类型冲突

    解释:可能对变量‘pa’使用了其类型不支持的操作。或者将‘pa’变量赋给不同类型的变量或重定义该变量;

 

278:9: 错误:空的字符常量

    解释:C的字符常量是用单撇号括起来的一个字符。如'a','x','D','?','$'等都是字符常量。但注意''并不表示一个字符常量。如果访问'',就会引发空字符常量错误;

 

28在函数 MergeList_Sq 中:18: 警告:在无返回值的函数中,‘return 带返回值

    解释:void函数为无返回值的函数。这就意味着函数中使用‘return’语句时,之后不能跟有返回值;

 

29在函数 rabbit 中:3: 错误:可变大小的对象不能被初始化

    解释:这种错误一般发生在用变量作为数组大小来初始化数组变量;

 

30在函数 days 中:4: 警告:标量初始值设定项中有多余元素

    解释:在函数‘days’中,在初始化某个数组时,初始化的元素个数多于定义时的元素个数;

 

3113:39: 错误:数字中有太多小数点

    解释:数字常量中有太多小数点,不符合数字常量的定义;

 

323:9: 错误:整数常量的“f”后缀无效 在函数 bonus 中:

    解释:“f”后缀只能添加在实型常量之后,加在整型常量后就会引发该错误;

 

33在函数 count_words 中:7: 错误:‘c 重声明为没有外部链接

    解释:在函数‘count_words’中,声明一个新的变量时,使用了已经存在的某个变量的名称来命名新的变量。C程序在开始执行函数后,首先会根据变量名和变量类型为声明的变量分配存储空间,这就要求所有的变量的名称必须在本函数内是唯一的。任何对同一个变量名的重新声明都将是为错误;

 

34在函数 bonus 中:7: 错误:break 语句不在循环或开关语句内

    解释:break语句的功能是用来跳出switch结构和循环体,即提前结束循环接着执行循环下面的语句。因此C语言要求break语句不能用于循环语句和switch语句之外的任何语句中;

 

35在函数 prime 中:5: 错误:自增运算中的左值无效

    解释:在函数‘prime’中,调用自增操作符时,操作的对象不符合左值要求;

 

36在函数 GetElem_L 中:14: 错误:下标运算的左操作数既非数组也非指针

    解释:下标运算符(或变址运算符)'[]'要求操作符左侧的变量名必须是数组名或指针;

 

37在函数 Insert_SqList 中:7: 错误:expected declaration or statement at end of input

    解释:多数是由于少了匹配的大括号造成的,当然小括号没有闭合也有可能!编译的时候找到文件的末尾也没有找到该出现的东西;

 

38在函数 count_words 中:3: 警告:从不兼容的指针类型初始化

    解释:在函数‘count_words’中,用非指针类型的值来初始化指针类型变量;

 

39在函数 ListInsert_Sq 中:6: 错误:在 data 中缺少数组大小

    解释:在函数‘ListInsert_Sq’中,声明名为data的数组时,没有给出数组的大小,如语句char data[];

 

40在函数 days 中:5: 错误:重复的 case 常量

    解释:在函数 days’中,发现了重复出现的case常量。switch/case语句要求每一个case的常量表达式的值必须互不相同,否则就会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案)。

 

 

OPENGL坐标系

openGL使用右手坐标

从左到右,x递增
从下到上,y递增
从远到近,z递增


OPENGL坐标系可分为:世界坐标系和当前绘图坐标系。

世界坐标系以屏幕中心为原点(0, 0, 0)。你面对屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1)。

当前绘图坐标系是 绘制物体时的坐标系。程序刚初始化时,世界坐标系和当前绘图坐标系是重合的。当用glTranslatef(),glScalef(), glRotatef()对当前绘图坐标系进行平移、伸缩、旋转变换之后, 世界坐标系和当前绘图坐标系不再重合。改变以后,再用glVertex3f()等绘图函数绘图时,都是在当前绘图坐标系进行绘图,所有的函数参数也都是相 对当前绘图坐标系来讲的。