最新日志

发表于:2008-5-8 21:13:16
标签:元件  参数  

0

实用电工速算口诀

实用电工速算口诀
★ ★
yuefour(金币+2):thanks

实用电工速算口诀
已知变压器容量,求其各电压等级侧额定电流
口诀。:
容量除以电压值,其商乘六除以十。
说明:适用于任何电压等级。
在日常工作中,有些电工只涉及一两种电压等级的变压器额定电流的计算。将以上口诀简化,则可推导出计算各电压等级侧额定电流的口诀:
容量系数相乘求。
已知变压器容量,速算其一、二次保护熔断体(俗称保险丝)的电流值。
口诀b :
配变高压熔断体,容量电压相比求。
配变低压熔断体,容量乘,除以5 。
说明:
正确选用熔断体对变压器的安全运行关系极大。当仅用熔断器作变压器高、低压侧保护时,熔体的正确选用更为重要。这是电工经常碰到和要解决的问题。
已知三相电动机容量,求其额定电流
口诀(C ) :容量除以千伏数,商乘系数点七六。
说明:
(峥口诀适用于任何电压等级的三相电动机额定电流计算。由公式及口诀均可说明容量相同的电压等级不同的电动机的额定电流是不相同的,即电压千伏数不一样,去除以相同的容量,所得“商数”显然不相同,不相同的商数去乘相同的系数。76 ,所得的电流值也不相同。若把以上口诀叫做通用口诀,则可推导出计算22 。、3 吕。、66 。、洲kV 电压等级电动机的额定电流专用计算口诀,用专用计算口诀计算某台三相电动机额定电流时,容量千瓦与电流安培关系直接倍数化,省去了容量除以千伏数,商数再乘系数脚6 。三相二百二电机,千瓦三点五安培。
常用三百八电机,一个千瓦两安培。
低压六百六电机,千瓦一点二安培。
高压三千伏电机,四个千瓦一安培。
高压六千伏电机,八个千瓦一安培。
( 2 )口诀c 使用时,容量单位为kw ,电压单位为kv ,电流单位为A ,此点一定要注意。
(劝口诀C 中系数脚6 是考虑电动机功率因数和效率等计算而得的综合值。功率因数为洲5 ,效率不洲,此两个数值比较适用于几十千瓦以上的电动机,对常用的1 okw 以下电动机则显得大些。这就得使用口诀c 计算出的电动机额定电流与电动机铭牌上标注的数值有误差,此误差对1 OkW 以下电动机按额定电流先开关、接触器、导线等影响很小。
( 4 )运用口诀计算技巧。用口诀计算常用3 吕。V 电动机额定电流时,先用电动机配接电源电压端吕kV 数去除脚6 、商数2 去乘容量( kw )数。若遇容量较大的6kv 电动机,容量kw 数又恰是6kv 数的倍数,则容量除以千伏数,商数乘以。76 系数。(劝误差。由口诀c 中系数。76 是取电动机功率因数为。吕5 、效率为。,而算得,这样计算不同功率因数、效率的电动机额定电流就存在误差。由口诀C 推导出的5 个专用口诀,容量(kw )与电流(助的倍数,则是各电压等级(kv )数除去。76 系数的商。专用口诀简便易心算,但应注意其误差会增大。一般千瓦数较大的,算得的电流比铭牌上的略大些;而千瓦数较小的,算得的电流则比铭牌上的略小些。对此,在计算电流时,当电流达十多安或几十安时,则不必算到小数点以后。可以四舍而五不人,只取整数,这样既简单又不影响实用。对于较小的电流也只要算到一位小数即可。
,测知电流求容量
测知无铭牌电动机的空载电流,估算其额定容量
口诀:
无牌电机的容量,测得空载电流值,
乘十除以八求算,近靠等级千瓦数。
说明:口诀是刘无铭牌的三相异步电动机,不知其容量千瓦数是多少,可按通过测量电动机空载电流值,估算电动机容量千瓦数的方法。
测知电力变压器二次侧电流,求算其所载负荷容量
口诀:
已知配变二次压,测得电流求千瓦。
电压等级四百伏,一安零点六千瓦。
电压等级三千伏,一安四点五千瓦。
电压等级六千伏,一安整数九千瓦。
电压等级十千伏,一安一十五千瓦。
电压等级三万五,一安五十五千瓦。
说明:
(峥电工在日常工作中,常会遇到上级部门,管理人员等问及电力变压器运行情况,负荷是多少尸电工本人也常常需知道变压器的负荷是多少。负荷电流易得知,直接看配电装置上设置的电流表,或用相应的钳型电流表测知,可负荷功率是多少,不能直接看到和测知。这就需靠本口诀求算,否则用常规公式来计算,既复杂又费时间。
( 2 ) “电压等级四百伏,一发零点六千瓦。”当测知电力变压器二次侧(电压等级4 朋V )负荷电流后,安培数值乘以系数“便得到负荷功率千瓦数。
测知白炽灯照明线路电流,求算其负荷容量
照明电压二百二,一安二百二十瓦。
说明:工矿企业的照明,多采用2 Zov 的白炽灯。照明供电线路指从配电盘向各个照明配电箱的线路,照明供电干线一般为三相四线,负荷为4 kw 以下时可用单相。照明配电线路指从照明配电箱接至照明器或插座等照明设施的线路。不论供电还是配电线路,只要用钳型电流表测得某相线电流值,然后乘以22 。系数,积数就是该相线所载负荷容量。测电流求容量数,可帮助电工迅速调整照明干线三相负荷容量不平衡问题,可帮助电工分析配电箱内保护熔体经常熔断的原因,配电导线发热的原因等等。
测知无铭牌朋。v 单相焊接变压器的空载电流,求算基额定容量
口诀:
三百八焊机容量,空载电流乘以五。
单相交流焊接变压器实际上是一种特殊用途的降压变压器,与普通变压器相比,其基本工作原理大致相同。为满足焊接工艺的要求,焊接变压器在短路状态下工作,要求在焊接时具有一定的引弧电压。当焊接电流增大时,输出电压急剧下降,当电压降到零时(即二次侧短路),二次侧电流也不致过大等等,即焊接变压器具有陡降的外特性,焊接变压器的陡降外特性是靠电抗线圈产生的压降而获得的。空载时,由于无焊接电流通过,电抗线圈不产生压降,此时空载电压等于二次电压,也就是说焊接变压器空载时与普通变压器空载时相同。变压器的空载电流一般约为额定电流的6 %一吕%(国家规定空载电流不应大于额定电流的1 。%)。这就是口诀和公式的理论依据。
已知朋。V 三相电动机容量,求其过载保护热继电器元件额定电流和整定电流
口诀:
电机过载的保护,热继电器热元件;
号流容量两倍半,两倍千瓦数整定。
说明:
(峥容易过负荷的电动机,由于起动或自起动条件严重而可能起动失败,或需要限制起动时间的,应装设过载保护。长时间运行无人监视的电动机或3 kw 及以上的电动机,也宜装设过载保护。过载保护装置一般采用热继电器或断路器的延时过电流脱扣器。目前我国生产的热继电器适用于轻载起动,长时期工作或间断长期工作的电动机过载保护。
( 2 )热继电器过载保护装置,结构原理均很简单,可选调热元件却很微妙,若等级选大了就得调至低限,常造成电动机偷停,影响生产,增加了维修工作。若等级选小了,只能向高限调,往往电动机过载时不动作,甚至烧毁电机。(劝正确算选朋。v 三相电动机的过载保护热继电器,尚需弄清同一系列型号的热继电器可装用不同额定电流的热元件。热元件整定电流按“两倍千瓦数整定”;热元件额定电流按“号流容量两倍半”算选;热继电器的型号规格,即其额定电流值应大于等于热元件额定电流值。已知朋。V 三相电动机容量,求其远控交流接触器额定电流等级
口诀:
远控电机接触器,两倍容量靠等级;
步繁起动正反转,靠级基础升一级。
说明:
(峥目前常用的交流接触器有C Jl 。、CJ12 、C 佗。等系列,较适合于一般三相电动机的起动的控制。
已知小型朋。V 三相笼型电动机容量,求其供电设备最小容量、负荷开关、保护熔体电流值
口诀:
直接起动电动机,容量不超十千瓦;
六倍千瓦选开关,五倍千瓦配熔体。
供电设备千伏安,需大三倍千瓦数。
说明:
(峥口诀所述的直接起动的电动机,是小型3 吕。V 鼠笼型三相电动机,电动机起动电流很大,一般是额定电流的4 一7 倍。用负荷开关直接起动的电动机容量最大不应超过1 okw ,一般以45kw 以下为宜,且开启式负荷开关(胶盖瓷底隔离开关)一般用于”kw 及以下的小容量电动机作不频繁的直接起动;封闭式负荷开关(铁壳开关)一般用于1 okw 以下的电动机作不频繁的直接起动。两者均需有熔体作短路保护,还有电动机功率不大于供电变压器容量的朋%。总之,切记电动机用负荷开关直接起动是有条件的!( 2 )负荷开关均由简易隔离开关闸刀和熔断器或熔体组成。为了避免电动机起动时的大电流,负荷开关的容量,即额定电流(幼;作短路保护的熔体额定电流(助,分别按“六倍千瓦选开关,五倍千瓦配熔件”算选,由于铁壳开关、胶盖瓷底隔离开关均按一定规格制造,用口诀算出的电流值,还需靠近开关规格。同样算选熔体,应按产品规格选用。
已知笼型电动机容量,算求星三角起动器(QX3 、QX4 系列)的动作时间和热元件整定电流
口诀:
电机起动星三角,起动时间好整定;
容量开方乘以二,积数加四单位秒。
电机起动星三角,过载保护热元件;
整定电流相电流,容量乘八除以七。
说明:
(峥QX3 、QX4 系列为自动星形三角形起动器,由三只交流接触器、一只三相热继电器和一只时间继电器组成,外配一只起动按钮和一只停止按钮。起动器在使用前,应对时间继电器和热继电器进行适当的调整,这两项工作均在起动器安装现场进行。电工大多数只知电动机的容量,而不知电动机正常起动时间、电动机额定电流。时间继电器的动作时间就是电动机的起动时间(从起动到转速达到额定值的时间),此时间数值可用口诀来算。
( 2 )时间继电器调整时,暂不接人电动机进行操作,试验时间继电器的动作时间是否能与所控制的电动机的起动时间一致。如果不一致,就应再微调时间继电器的动作时间,再进行试验。但两次试验的间隔至少要在朋:以上,以保证处夏属时间继电器自动复位。(劝热继电器的调整,由于QX 系列起动器的热电器中的热元件串联在电动机相电流电路中,而电动机在运行时是接成三角形的,则电动机运行时的相电流是线电流(即额定电流)的1 /了3 倍。所以,热继电器热元件的整定电流值应用口诀中“容量乘八除以七”计算。根据计算所得值,将热继电器的整定电流旋钮调整到相应的刻度中线刻度左右。如果计算所得值不在热继电器热元件额定电流调节范围,即大于或小于调节机构之刻度标注高限或低限数值,则需更换适当的热继电器,或选择适当的热元件。已知笼型电动机容量,求算控制其的断路器脱扣器整定电流
口诀:
断路器的脱扣器,整定电流容量倍;
瞬时一般是二十,较小电机二十四;
延时脱扣三倍半,热脱扣器整两倍。
说明:(峥自动断路器常用在对鼠笼型电动机供电的线路上作不经常操作的断路器。如果操作频繁,可加串一只接触器来操作。断路器利用其中的电磁脱扣器(瞬时)作短路保护,利用其中的热脱扣器(或延时脱扣器)作过载保护。断路器的脱扣器整定电流值计算是电工常遇到的问题,口诀给出了整定电流值和所控制的笼型电动机容量千瓦数之间的倍数关系。
( 2 ) “延时脱扣三倍半,热脱扣器整两倍”说的是作为过载保护的自动断路器,其延时脱扣器的电流整定值可按所控制电动机额定电流的曰倍选择,即肠倍千瓦数选择。热脱扣器电流整定值,应等于或略大于电动机的额定电流,即按电动机容量千瓦数的2 倍选择。
已知异步电动机容量,求算其空载电流
口诀:
电动机空载电流,容量八折左右求;
新大极数少六折,旧小极多千瓦数。
说明:
( 异步电动机空载运行时,定了三相绕组中通过的电流,称为空载电流。绝大部分的空载电流用来产生旋转磁场,称为空载激磁电流,是空载电流的无功分量。还有很小一部分空载电流用于产生电动机空载运行时的各种功率损耗(如摩擦、通风和铁芯损耗等),这一部分是空载电流的有功分量,因占的比例很小,可忽略不计。因此,空载电流可以认为都是无功电流。从这一观点来看,它越小越好,这样电动机的功率因数提高了,对电网供电是有好处的。如果空载电流大,因定子绕组的导线载面积是一定的,允许通过的电流是一定的,则允许流过导线的有功电流就只能减小,电动机所能带动的负载就要减小,电动机出力降低,带过大的负载时,绕组就容易发热。但是,空载电流也不能过小,否则又要影响到电动机的其他性能。一般小型电动机的空载电流约为额定电流的朋%一7 。%,大中型电动机的空载电流约为额定电流的2 。%一4 。%。具体到某台电动机的空载电流是多少,在电动机的铭牌或产品说明书上,一般不标注。可电工常需知道此数值是多少,以此数值来判断电动机修理的质量好坏,能否使用。
( 2 )口诀是现场快速求算电动机空载电流具体数值的口诀,它是众多的测试数据而得。它符合“电动机的空载电流一般是其额定电流的1 / 3 ”。同时它符合实践经验:“电动机的空载电流,不超过容量千瓦数便可使用”的原则(指检修后的旧式、小容量电动机)。口诀“容量八折左右求”是指一般电动机的空载电流值是电动机额定容量千瓦数的洲倍左右。中型、4 或6 极电动机的空载电流,就是电动机容量千瓦数的洲倍;新系列,大容量,极数偏小的2 级电动机,其空载电流计算按“新大极数少六折”;对旧的、老式系列、较小容量,极数偏大的吕极以上电动机,其空载电流,按“是小极多千瓦数”计算,即空载电流值近似等于容量千瓦数,但一般是小于千瓦数。运用口诀计算电动机的空载电流,算值与电动机说明书标注的、实测值有一定的误差,但口诀算值完全能满足电工日常工作所需求。
已知电力变压器容量,求算其二次侧(。4 kv )出线自动断路器瞬时脱扣器整定电流值
口诀:
配变二次侧供电,最好配用断路器;
瞬时脱扣整定值,三倍容量千伏安。
说明:
(峥当断路器作为电力变压器二次侧供电线路开关时,断路器脱扣器瞬时动作整定值,一般按
电工需熟知应用口诀
巧用低压验电笔
低压验电笔是电工常用的一种辅助安全用具。用于检查朋。v 以下导体或各种用电设备的外壳是否带电。一支普通的低压验电笔,可随身携带,只要掌握验电笔的原理,结合熟知的电工原理,灵活运用技巧很多。
( 判断交流电与直流电口诀
电笔判断交直流,交流明亮直流暗,
交流氖管通身亮,直流氖管亮一端。
说明:
首先告知读者一点,使用低压验电笔之前,必须在已确认的带电体上验测;在未确认验电笔正常之前,不得使用。判别交、直流电时,最好在“两电”之间作比较,这样就很明显。测交流电时氖管两端同时发亮,测直流电时氖管里只有一端极发亮。( 2 )判断直流电正负极口诀:
电笔判断正负极,观察氖管要心细,
前端明亮是负极,后端明亮为正极。
说明:
氖管的前端指验电笔笔尖一端,氖管后端指手握的一端,前端明亮为负极,反之为正极。测试时要注意:电源电压为1 IOV 及以上;若人与大地绝缘,一只手摸电源任一极,另一只手持测民笔,电笔金属头触及被测电源另一极,氖管前端极发亮,所测触的电源是负极;若是氖管的后端极发亮,所测触的电源是正极,这是根据直流单向流动和电子由负极向正极流动的原理。
(劝判断直流电源有无接地,正负极接地的区别口诀
变电所直流系数,电笔触及不发亮;
若亮靠近笔尖端,正极有接地故障;
若亮靠近手指端,接地故障在负极。
说明:
发电厂和变电所的直流系数,是刘地绝缘的,人站在地上,用验电笔去触及正极或负极,氖管是不应当发亮的,如果发亮,则说明直流系统有接地现象;如果发亮在靠近笔尖的一端,则是正极接地;如果发亮在靠近手指的一端,则是负极接地。
( 4 )判断同相与异相口诀
判断两线相同异,两手各持一支笔,
两脚与地相绝缘,两笔各触一要线, 用眼观看一支笔,不亮同相亮为异。
说明:
此项测试时,切记两脚与地必须绝缘。因为我国大部分是3 吕。/2 Zov 供电,且变压器普遍采用中性点直接接地,所以做测试时,人体与大地之间一定要绝缘,避免构成回路,以免误判断;测试时,两笔亮与不亮显示一样,故只看一支则可。
(劝判断3 吕。/22oV 三相三线制供电线路相线接地故障口诀
星形接法三相线,电笔触及两根亮,
剩余一根亮度弱,该相导线已接地;
若是几乎不见亮,金属接地的故障。
说明:
电力变压器的二次侧一般都接成丫形,在中性点不接地的三相三线制系统中,用验电笔触及三根相线时,有两根比通常稍亮,而另一根上的亮度要弱一些,则表示这根亮度弱的相线有接地现象,但还不太严重;如果两根很亮,而剩余一根几乎看不见亮,则是这根相线有金属接地故障。
现场急救触电才人工呼吸法
触电人脱离电源后,应立即进行生理状态的判定。只有经过正确的判定,才能确定抢救方法。
(峥判定有无意识。救护人轻拍或轻摇触电人的户膀(注意不要用力过猛或摇头部,以免加重可能存在的外伤),并在耳旁大声呼叫。如无反应,立即用手指掐压人中穴。当呼之不应,刺激也毫无反应时,可判定为意识已丧失。该判定过程应在弱内完成。当触电人意识已丧失时,应立即呼救。将触电人仰卧在坚实的平面上,头部放平,颈部不能高于胸部,双臂平放在驱干两侧,解开紧身上衣,松开裤带,取出假牙,清除口腔中的异物。若触电人面部朝下,应将头、户、驱干作为一个整体同时翻转,不能扭曲,以免加重颈部可能存在的伤情。翻转方法是:救护人跪在触电人肩旁,先把触电人的两只手举过头,拉直两腿,把一条腿放在另一条腿上。然后一只手托住触电人的颈部,一只手扶住触电人的肩部,全身同时翻转。
( 2 )判定有无呼吸。在保持气道开放的清况下,判定有无呼吸的方法有:用眼睛观察触电人的胸腹部有无起伏;用耳朵贴近触电人的口、鼻,聆听有无呼吸的声音;用脸或手贴近触电人的口、鼻,测试有无气体排出;用一张薄纸片放在触电人的口、鼻上,观察纸片是否动。若胸腹部无起伏、无呼气出,无气体排出,纸片不动,则可判定触电人已停止呼吸。该判定在3 一弱内完成。

点击此处查看原文 >>

系统分类: 消费电子   |    用户分类:    |    来源: 整理

评论(0) | 阅读(83)
发表于:2008-5-6 10:12:30
标签:应聘  经验  

0

一个非HR对应届毕业生的建议

我不是一个HR,但因为工作关系,多年来一直帮助所在企业以及兄弟企业招聘应届毕业生。
粗略统计,8年来,一共查阅应届毕业生简历数已经超过10000份,面试应届毕业生超过3000人,招聘入职应届毕业生超过500人。
这些经历,让我对应届生的就业有了一些了解和认识,对很多面试的学生,只要条件允许,我一定会和他们进行深入的交流和沟通,尽我所能做一些微薄的帮助。
从今天开始,我会陆续交流一下我的认识,希望对广大还在“找”工作的应届生一些参考和帮助。
我不是正规军,我只是游击队!


建议(一)--简历
简历是一个面试者的门面!
关于简历如何撰写,很多所谓的专业人士也有过很多的介绍,很多人才网也有所谓的“模板”,我没有太多的理论,只是从自己看简历的角度说说看法!
对很多应届毕业生来说,简历的“包装”不够,缺乏亮点。
很多应届生的简历基本分为三部分:
第一,基本信息介绍,包括姓名、性别、年龄、籍贯、党员/团员、婚否等等;
第二,基本专业课介绍,将自己学过的一些专业课程的罗列;
第三,评语部分,一些所谓的辅导员或自己的评价,如“该生在校期间表示良好,思想要求进步...”等等;
这样的简历是不会引起招聘人员注意的!!
很多统计显示,HR“扫描”一份简历的时间大概在10秒以内,这种没有任何“包装”的简历基本就消息了。
应届毕业生如何整理自己的简历呢?

第一,基本信息介绍,简洁明了就好;这一部分不需要任何包装;
第二,这是简历的“最核心”部分,一定要详细说明,我的建议是,根据应聘的职位要求,将自己和这个职位相吻合的经历做介绍;
举例说明,要面试“单片机开发工程师”,一般的要求是单片机、C语言熟悉,做过一些单片机项目等等;
作为应届生不会有太多的项目经验,但可以将自己的实践经历说明,继续举例:
1、语音交通灯项目(课程设计题目),凌阳单片机+交通灯模组,C语言+汇编,实现模拟控制交通灯性能;
2、跷跷板小车(07电子竞赛题目),凌阳单片机+角度传感器+等等,负责程序设计,实现小车在跷跷板寻找性能;
3、...
第三,个人社会实践的经历,当过班/社团/学生会干部、有过勤工俭学经历;
第四,奖学金的经历;
关于简历,要强调的就是,一定要有“包装”的概念--将自己和职位相近、吻合的经历做介绍,将其他不重要的信息尽量简介。



点击此处查看原文 >>

系统分类: 单片机   |    用户分类:    |    来源: 转贴

评论(0) | 阅读(101)
发表于:2008-4-29 20:44:56
标签:无标签

0

成功人士原因

  他们升入国内重点院校,是因为他们在同龄人当中成绩比较拔尖。
  他们前往海外名校深造,还是是因为他们在同学当中成绩比较拔尖。
  他们进入国际名企工作,是因为他们的能力被这些企业看中。
  他们独立创业,是因为他们具备了很多同事们没有的魄力。
  他们度过了最艰苦的耕耘期,是因为他们比竞争者们多了几分毅力,也许还多了一丝运气。
  他们终于成功了,是因为除了坚持,他们选对了正确的方向。
  ……
  
  综上所述,他们成功,是因为他们的素质,而不是仅仅因为他们出身名门。

点击此处查看原文 >>

系统分类: 生活点滴   |    用户分类:    |    来源: 整理

评论(0) | 阅读(81)
发表于:2008-4-29 20:42:16
标签:无标签

0

电子类导航网站

电子类网站导航

mcs-51单片机技术学习:
www.laogu.com
www.mcu51.com
www.c51bbs.com
www.21icbbs.com


国外网站:
http://www.edaboard.com
http://www.icmaster.com/
http://www.opencores.org/
http://www.digital-designs.com/
http://www.dspguide.com/
http://www.fsa.org/
电路图网站,很多基本电路:
http://www.4qdtec.com/index.html
http://ourworld.compuserve.com/homepages/Bill_Bowden/
http://www.ee.washington.edu/circuit_archive/circuits/
http://www.mitedu.freeserve.co.uk/schematics.htm
http://www.uslink.net/~cybercir/
http://www.psyber.com/~dibsed/dcircats.html
http://www.eedesign.com.tw/html/default.asp
http://www.commlinx.com.au/schematics.htm
http://www.aaroncake.net/circuits/
http://www.uoguelph.ca/~antoon/circ/circuits.htm
http://www.electronic-circuits-diagrams.com/
http://www.udl.es/usuaris/p4089324/electronica/esquemas.htm
http://tulungagung1.tripod.com/elektro.htm
http://www.epanorama.net/index.php?index=circuit
http://www.solorb.com/elect/
http://www.designnotes.com/Circuits.htm
http://www.hwb.acc.umu.se/circuit/index.html
http://jap.hu/electronic/
http://www.devrs.com/pic/
http://www.rentron.com/
http://www.rlocman.ru/en/
http://users.otenet.gr/~athsam/#Active
http://www.schematicsforfree.com/
http://www4.tpgi.com.au/users/talking/
http://www.wa4dsy.net/
http://www.jakehome.com.tw/ckt.html
http://www.hwb.acc.umu.se/
http://www.eedesign.com.tw/rumor/index.asp
http://www.eedesign.com.cn
公司资料:
http://www.maxim-ic.com.cn/appnotes10.cfm/filter/category
国家半导体研讨会资料: http://www.national.com/onlineseminar/
国家半导体在线技术期刊: http://www.national.com/nationaledge/
Ti技术文章数据库: http://www.ti.com.cn/support/techdoc.asp
Ti技术讲座: http://www.ti.com.cn/support/ttraining.asp
http://www.cndzz.com


FPGA,CPLD,IC类网站:


常用资料与下载:
http://www.51armdsp.com/ 自由电子论坛
http://www.b2bic.com/ 电子查询网
http://amine.nease.net/ Amine嵌入式系统开发
http://www.mcu51.com/download/digitpdf/40xx/关于4000系列资料
http://www.mcu51.com/download/digitpdf/45xx/关于4500系列资料
http://www.mcu51.com/download/digitpdf/74xx/关于7400系列资料
http://www.mcu51.com/download/RS485note.pdf关于RS485的资料
http://www.mcu51.com/download/binhex.com工具
http://www.mcu51.com/download/hexbin.exe工具
http://www.mcu51.com/download/c51eval.zip关于C51的资料
http://www.mcu51.com/download/digitpdf/CPU/关于CPU的资料
http://www.maxim-ic.com.cn/Max1800-2690/MAX220-M.PDF资料
http://www.maxim-ic.com.cn达拉斯公司主站
http://etuni.com/downdata.asp?id=832&C51Tip.pdf关于C51的资料
http://www.mcu-tech.com/download/c51%20user1.pdf关于C51的资料
http://www.laogu.com/download/c51ctl.zip关于C51的资料
http://etuni.com/downsoft.asp?id=118&KeilC51v612.zip是C51中文资料
http://www.whwave.com.cn/wsjiaocai.htm教材、资料
http://www.whwave.com.cn/WWIC.htm部分IC资料
http://www.whwave.com.cn/FM24CXX.htm关于24系列资料
http://www.hongyan-e.com/web/dzbic.htm部分IC资料
http://www.cetinet.com/downloadtemp/chuankouzsV2.1.zip免费串口调试器
http://www.atmel.com/dyn/product ... o&Direction=ASC关于ATEML全系列资料
http://62.236.156.23/ideaport/d大量单片机、IC资料
http://www.p8s.com/products1/default.htm武汉力源单片机、IC资料
http://www.mcuok.com/zl/AT89S.pdf单片机AT89SXX系列资料
http://www.willar.com/download/files/jtg.zip常用三极管资料
http://www.21ic.com/download/ope ... wnload/avrebook.zip关于AVR的资料
http://www.21ic.com/download/ope ... wnload/dianlutu.zip常用电路图集
http://www.atmel.com/dyn/product ... o&Direction=ASC常用ATEML系列单片机
http://www.cetinet.com/downloadtemp/AVRselectnew.zip最新AVR器件表
http://www.cetinet.com/downloadtemp/c51programe.zip源程序C51集锦
http://www.cetinet.com/downloadtemp/pcwrite24.rar计算机并口读写W24CXX系列
http://www.cetinet.com/downloadtemp/c51user1.pdf《51单片机新技术》
http://www.cetinet.com/downloadtemp/adc2051.rar电阻网络ADC
http://www.cetinet.com/downloadtemp/max7219.pdf共阴LED驱动MAX7219
http://www.cznewcom.com/products/interfaceconverter/232r.htm工业级RS-232远程长线驱动器
http://www.mcuok.com/cd1/%b5%a5% ... a%b7%a2%b9%a4%be%df多种单片机开发工具
&nbsftp://flyflyflyfly.vicp.net单片机AVR、PIC、VCD、彩电资料
http://www.goldenchip.com.cn/dow ... ronic_Workbench.zip电路仿真软件
http://www.whwave.com.cn/wsjiaocai.asp关于EM78单片机资料
http://c-51.myrice.com/xp.htm关于51全系列单片机资料
http://www.pcbtech.net/manage/upload/download/protellib.zip关于Protel 元件库
http://www.hongyan-e.com/web/dzbjdq1.htm常用电子元气件
http://www.xie-gang.com/zlsjp.htm常用电子元件资料
http://www.51wy.com/avr/download/help.zip硬件资料
http://www.singsun.com.cn/ende.asp遥控相关的资料
http://www.8052.com/chips.phtml有关51/78系列的资料
http://www.sshangsi.com/servers.asp PDF下载
电子开放实验室:
http://www.open-lab.net/
失效专利文摘数据库,查到专利号后再用下面地址下全部资料
http://www.21sh.com/czzynet/shuo/index1.htm
最新失效专利库,可淘金,亦可用来举证无效你的竞争对手的专利http://www.bestinfo.net.cn/besti ... ubmit2=%B2%E9%D1%AF
可下全部专利资料,不收费的哦
http://www.sipo.gov.cn/
海量pdf库,900多M,不要晕了拉
http://wwwk.heltech.edu.hel.fi/ideaport/d/
http://www.ls-labs.com (网友wangshujun提供,速度较快)
下载贴片元件资料,算是敲门砖吧
http://www.sshangsi.com/servers.asp
一家派头蛮大的网站
http://www.luckmcu.com/html/download.htm
下载背光驱动资料
http://www.heatseal.com.hk/
下载各类教程好去处
http://www.pconline.com.cn/pcedu/soft/
电子超市,资料库数据量21.35G,菜鸟大虾老少皆宜的,小心眼花哦
http://218.7.17.204/
可下载《近代超声原理与应用》全书 PDF格式,共34M
http://www.tyco.com.cn/book/down.htm
中国电子技术信息网,内容广博,但不很深,领航级,去了就知道(网友shijunlian提供)
http://www.cetinet.com
贴片电阻标识代码表,求解"01C","01B","47A"阻值
http://www.rgaco.com/catalog/C/ThickFCRC3_9.pdf
SMT工程师之家,介绍SMT工艺,规范,技术
http://pro.smt.cn/web/jswl/bmtjs/200310210041.htm
SMT之家,有诸多内容,相信会吸引你的
http://www.smthome.net/article/sort.php/4
可搜寻 晶体管,集成电路,桥堆,电容,电阻,电池,晶振,可控硅 的报价,供设计方案阶段参考
http://www.eplaza.com.cn/elec/pr ... =%BF%C9%BF%D8%B9%E8
根据"印字","型号","厂家","类型","封装"查找贴片资料(网友阿锦提供)
http://www.carcav.com/search/sea ... =14&Submit.y=12
PC 机内部设备接口,内存条,外接输入输出接口,各种转换口,转接器的脚位定义,内容相当正点
http://www.hj-tech.com/file/sup/io/support_pcio.htm
推荐一个很不错的网站,其中常用资库查阅极方便,主人慷慨公开了很多实例,会有得来全不费功夫之感觉,哈哈,自已去看了拉
http://www.daqchina.net/
闸流管和双向可控硅成功应用的十条黄金规则
http://www.semiconductors.philip ... onnotes/AN10121.pdf
EDA学习园,偶然机会推门一瞄,哈哈,哈,哈,笑不动了拉,又做了一回跌勒米缸里的老虫
http://eda.sdedu.net/
常用的三条腿的器件,全部中文资料
http://www.huashan.com.cn/chinese/products.htm
听说过ewb吧,有比它更完整的"Multisim"200多M等你去下,还奉送中文版教程,我已在用了,哈哈,美极了
http://218.7.17.204/fei/2.htm
Protel经典图书专辑,哈哈,穷小子不用跑书店了拉
http://218.7.17.204/chaoxing/7.htm
这里有何立民教授的"单片机应用技术选编"第1~8集,共197M,Pdf格式 (网友smcu提供)
http://www.jinjubao.com
电气安全名词术语,GB4776-84全文,供收藏备用,当你满世界找它时,它竟在你平时的无意收藏中等你,哈哈
http://www.lsza.com/sxtd/gb4776/gb4776.htm
中国继电器网,有关继电器的五花八门一网打尽,相当权威的,不用多说了吧
http://www.wwb-st.com/
较完整地提供了各种规格的LED数码管数据资料,驱动,应用等参考资料及单价
http://www.bitcode.com.cn/led.htm
根据贴片代码查找贴片三极管资料又一去处
http://info.electronicwerkstatt. ... eile/smd/smd_aktiv/
根据贴片代码查找贴片三极管资料再一去处,与前二处有区别,多点地方总是有益的,哈哈
http://www.republika.pl/elektronikjk/s1.html#p
贴片代码手册,代码规范,有80页之多,3.1M,玩家必备,再次晕
http://www.sos.sk/pdf/SMD_Catalog.pdf
这个地址若不能直接打开,可先进
http://www.sos.sk/pdf/ 然后再点击SMD_Catalog.pdf
无意间闯入中国家用电器研究院,打开文件柜发现了这个好东东
<实施规则汇总> 可下载强制性产品认证实施规则,当老板要你写点什么时,提供炮弹,哈哈,别忘了谢我哦
http://www.cnca.gov.cn/cccssgz.htm
用于液晶显示的字库,好东东哦,不是太漂亮,但键盘字母都有哦
http://www.91it.net/download/software.asp?id=1112
值得一进的网站,似乎与上面的有些重复,但界面一目了然,可下资料,书籍,软件(由网友guxin001推荐)
http://ychunzhi.y365.com/ZY.htm
你平时用过这些东西吗?满世界找时叫得出它们的名字吗?这里给你提供了一份相当完整的资料
http://www.rccn.com.cn/index.html
Roland专门术语词典,非常详尽,喜欢电子音乐的朋友值得收藏
http://www.rolandtaiwan.com.tw/MI/glossary/b.htm#BandPassFilter
国内最大的一家壳体生产厂,品种多得令人眼花,不过价格有点偏高,做试样还是可以承受的
http://www.china-mould.com/gb/lei.asp?lei=18&page=2
数据资料大全,集二极管,三极管,线性电路,数字电路DataSheet之大成,市场上有的,几乎一网打尽,哈哈,又笑不动了拉
http://www.alldatasheet.com/
查找各种管子资料的好东东,神兵利器不嫌多
http://www.searchdatasheets.com/catalog/r/16.html
朴素的界面,与众不同的内容,简明的目录,如能收录下来,不失为好工具.(网友shijunlian推荐)
http://nice.xmu.edu.cn/webpub/electron/
效率很高的晶体管资料搜索工具,试查了几个难找的,竟然都有,呀呸,哈哈,又添丁了拉
http://www.datasheetcatalog.com/index.html
德克萨斯芯片资料库(网友HIGHWAY提供)
根据IC的标记查找,输入IC上标记,如“VACC”在Part Mark前圆圈内点一下,再点LOOKUP按钮
根据IC上的型号查找,输入完整型号,如“TLV2211CDBVR”,在Device 前圆圈内点一下,再点LOOKUP按钮
http://focus.ti.com/general/docs/partmarking/partmarkinghome.jsp?
数据中心的器件资料比较齐全,可以免费任意查询和下载!(由网友betterpao推荐)
http://www.ieechina.com/Info/DCSearch.aspx?k=mc14433
送本书给你---新型通用集成电路实用技术(电子版) PDF格式共253页9.5M
http://www.ieechina.com/upload/books/XX.pdf
哈工大的精品课件-----电子技术网络课程
http://202.118.224.195/ftproot/% ... %E7%A8%8B/7/7-1.htm
这里有哈工大更多精品课程,教学录象...
http://202.118.224.195/
一本相当详尽的电阻,电容,电感样本,分立的,片状的都有,技术参数,特性曲线,规格范围...,pdf格式,37M,玩家必备(由网友康富贵提供)
http://www.torch.com.cn/product/index.htm
这里有常用电子元件基础知识,较完整
http://www.6sq.net/softdown/index.html
这里有较详细的设计资料(sch,pcb),堪称大菜园了拉
http://www.bydzw.com/lcdpage/lcdpage.htm
网上收集的一些有关超声波资料库,大多转换为pdf格式,请大家先下载目录
再确定是否要下载全文。
http://www.china-ultrasonic.net/down.htm
这里是总店
http://www.china-ultrasonic.net/inde1.htm
传感器大全
http://www.sensor-ic.com/
与灯具相关的光学基本知识,公开了一些有用的数据
http://www.songye.cc/html/ygdzhishi.htm
台湾IC厂商网址( 介绍了台湾一百多家集成厂商网址 )
http://www.guangdongdz.com/1information_channel/1_13.asp
寻找MOS管的好去处,可按P,N沟道及耐压大小检索到所需电流的管子
http://ec.irf.com/v6/en/US/adirect/ir?cmd=catNavigateFrame
这里可找到全系列的VMOS管及模块,价格稍贵
http://www.86372.com/dldz/V100.HTM
囊括了全部仪器仪表操怍手册及信息资料,有1400多份资供你下
http://www.5117.com/download.php?&page=133
这里有些标准资料(有关照明及安全的规范),需要的可参考一下,网上不多见的拉
http://lib.5izm.net/
http://www.imagegarden.net/bt/to ... f86812386475fa78c39
国外体系结构相关专业链接:
- http://www.cs.wisc.edu/~arch/uwarch/
- http://buffy.eecs.berkeley.edu/Research/CS/ARC/ Univ. of Wisconsin
Univ. of California, Berkeley
设计和学习资源链接:
- http://www.mdronline.com
- http://www.fpgacpu.org
- http://www.spacetimepro.com
- http://www.lauterbach.com/download.html
- http://www.teleport.com/~scd/
- http://www.idt.com/products/

Data Book 库
其他相关资源:
- http://www.intel.com/intel/intelis/museum
- http://www.intel.com/intel/museum/25anniv
- http://www.museums.reading.ac.uk/vmoc
- http://micro.magnet.fsu.edu/creatures/index.html

半导体博览
http://www.9itoy.com/bbs/
ARM相关:
http://www.eetop.com.cn/cgi-bin/forums.cgi?forum=18 ARM论坛
http://www.cnarm.com/ ARM开发网
http://www.armux.com/armbbs/board/index.asp
http://www.akaembed.org/Inetpub/nuke/ AkA Embedded(嵌入式)
http://www.embed.com.cn/ 嵌入开发网
http://www.zlgmcu.com/home.asp 周立功
http://www.developboard.com/index.asp 电子开发板信息网
http://www.arm9.net/ 友谊之臂
http://www.xlmcu.com 仙林电子
http://bbs.9itoy.com
www.szembed.com
http://www.techor.com/Index.asp技创科技
http://www.zlgmcu.com/home.asp
http://www.embedinfo.com/
PIC相关:
www.mcusun.com
高奇电子http://www.goldenchip.com.cn/
贝能科技http://www.burnons.com/
http://www.pic16.com/
A:
----------------------------------------------------------
B:
北极星电技术网:http://www.bjx.com.cn/
薄膜开关技术 :http://www.membraneswitch.org/
编程器制作网:http://www.89s51.com/
------------------------------------------------------------
C:
COB绑定技术:http://www.bonding-cob.com/
cpubbs: http://www.cpubbs.com
材料器件情报网:http://www.chinaime.com/
传感器世界:http://www.sensorworld.com.cn/
传感器资讯网:http://www.globalsensors.com.cn/
---------------------------------------------------------------
D:
电子技术:http://zt.jycom.cn/dzyj/dzsj.asp
电子电路网站:http://www.cndzz.com/
电子技术应用:http://www.aetnet.cn
电子产品世界:http://www.edw.com.cn
电子世界:http://www.eleworld.com/ls/htdocs/index.asp
电子元器件应用:http://www.chinaecd.net/
电子制作实验室:http://www.xie-gang.com/
电子爱好者:http://www.etuni.com/
电子爱好者社区:http://www.mcuwork.com/
电子元器件查询网:http://www.b2bic.com/
电子元器件采购网:http://www.ait.com.cn/
电子技术天地:http://www.dzjs.com/
电子制造:http://www.emchinamag.com/Cstmf/BCsy/index.asp
电子设计技术:http://www.ednchina.com/Cstmf/BCsy/index.asp
电子开发板信息网:http://www.developboard.com/
电子工程师:http://www.eebyte.com/
电子在线:http://www.ourchip.com/
电子之城:http://www.pp51.com/
电子无忧网:http://www.dz51.com/main.asp
电子DIY之家:http://www.2000ok.com/
电子信息资源网:http://www.lanyi.cn/
电气设计网:http://www.dqsj.com/
电气商情网:http://www.168dq.com/ThirdEdition/Index.asp
电路测试评判网:http://elotest.netme.cn/
电器评介:http://www.dqpj.com/
单片机制作信息网:http://doughty.512j.com/
单片机C语言:http://www.c51bbs.com/
单片机发烧友网:http://www.mcufans.com/
单片机坐标:http://www.mcuzb.com/
单片机王国:http://www.21mcu.com/
单片机启点网:http://www.mcu99.com/
-----------------------------------------------------------------
E:
EDA学习网:http://eda.sdedu.net/
21世纪新锐:http://www.21xr.com/
-----------------------------------------------------------------
F:
----------------------------------------------------------------
G:
国外电子元器件:http://www.56789.com
国际光电与显示:http://www.display2000.com/
广州电子技术网:http://gzdzw.51.net/
广播发烧友:http://bcl.myetoys.com/
高奇电子:http://www.goldenchip.com.cn/index.asp
够数码:http://www.godigi.net/indexs.asp
-----------------------------------------------------------------
H:
华程电子:http://www.21ele.com/
火腿网:http://hamcq.vicp.net/
HC360:http://www.electric.hc360.com/
-----------------------------------------------------------------
I:
IC13交易网:http://www.ic13.com/
IC易拍网:http://www.chipbid.com/
IC在线网:http://www.e-ic.cn/
-----------------------------------------------------------------
J:
集成电路产业网:http://www.gotoic.com/
精诚电子设计:http://www.fjmcu.com/
机器人制作:http://www.luojz.net/main.asp
家电联盟(很多连接):http://www.jdunion.com/links.asp
利尔达单片机:http://www.lierda.com/
------------------------------------------------------------------
K:
开发田地:http://www.mcusky.com/
开发板之家:http://www.study-kit.com/index.asp
可控硅应用技术网:http://www.hz-qj.com/kkgw/
------------------------------------------------------------------
L:
61IC中国电子在线:http://www.61ic.com/
龙图开发网:http://www.longtoo.com/
老古开发网:http://www.laogu.com/
LCD在线:http://www.lcdinline.com/
LCDfans: http://www.lcdfans.com/
01单片机:http://www.01mcu.com/main.htm
-----------------------------------------------------------------
M:
MCU163:http://www.mcu163.com/
IMP3数码影音:http://www.imp3.net/
MP3秀:http://www.mp3show.cn/
MP3:http://www.megadiy.com/
美河学习在线:http://www.eimhe.com/index.php
------------------------------------------------------------------
N:
牛哥土炮发烧:http://www.ngtop.com/
------------------------------------------------------------------
O:
OLED网:http://www.oled.net.cn/
--------------------------------------------------------------------
P:
PCB技术网:http://www.pcbtech.net/index.asp
PIC单片机学习网:http://www.pic16.com/
PLD:http://www.fpga.com.cn/
平板显示吧:http://www.fpdweb.com/

-------------------------------------------------------------------
Q:
汽车电子世界网:http://www.aenmag.com/
嵌入开发网:http://www.embed.com.cn/
嵌入式世界:http://www.embedworld.com/index.asp
嵌入式联盟:http://www.51emb.com/
驱动开发网:http://www.driverdevelop.com/index.php
清风单片机:http://www.qfmcu.com/
全球半导体器件采购网:http://www.tr114.com/
------------------------------------------------------------------
R:
-----------------------------------------------------------------
S:
三毛电子世界:http://www.mculib.com/
SMT信息网:http://www.smt.cn/
世界液晶咨询网:http://www.worldtft.com/pro-asp/index.asp
收音机人:http://www.cnradior.com/article/index2.asp
骚客网络(MP3): http://www.saoren.com/
数码中国:http://www.digichina.cn/
数码专家小组:http://www.easydigi.com/
世纪开发网:http://www.21hf.com/
视听研究所:http://www.avresearcher.com/
上海硅知识产权交易中心:http://www.ssipex.com.cn/
--------------------------------------------------------------------
T:
通信时代:http://www.comm9.com/
通信世界:http://www.tele.com.cn/
通信世界网:http://www.cww.net.cn/
调频天空:http://www.fmdiy.com/
调频酷站:http://www.fmku.com/
钛金科技:http://www.tiking.com/
--------------------------------------------------------------------
U:
USB开发网:http://www.usbing.net/
usb之家:http://www.usbfans.com/
---------------------------------------------------------------------
V:
---------------------------------------------------------------------
W:
51单片机世界:http://www.mcu51.com/
51耳机网:http://www.51erji.com/
无线电杂志:http://www.radio.com.cn/
无线电子:http://win2000server.vicp.net:88/
无限电子制作:http://www.wxdzz.com/
我们的AVR:http://61.144.28.248/ouravr/index.html
我爱单片机:http://will009.myrice.com/
网博电源网:http://www.wb-power.com/
微控地带:http://www.eastdo.com/apple/index.asp
微系统论坛:http://www.hwswworld.com/
----------------------------------------------------------------------
X:
新材料产业网:http://www.materials.net.cn/
鑫都电子网:http://maxuefeng.nease.net/
学单片机:http://www.51c51.com/
西部电子网:http://www.ximeda.com/
晓奇工作室:http://www.xiao-qi.com/
迅特科技:http://www.chinadsp.com/
---------------------------------------------------------------------
Y:
硬件工程师之家:http://www.3721it.com/
仪器信息网:http://www.instrument.com.cn/
亿道电子: http://www.emdoor.com/index.asp
一学网:http://www.onestudy.net/
遥控网:http://www.rf315.com/
----------------------------------------------------------------------
Z:
自动化论坛:http://www.ca800.com/bbs/
中国DSP联盟:http://202.101.35.127/shengwq/dsp/
中国专利技术网:http://www.zlfm.com/
中国单片机世界:http://www.mcuw.com/
中国半导体行业网:http://www.csia.net.cn/
中国电子技术网:http://www.86et.com/
中电网:http://www.chinaecnet.com
中国电子报:http://www.cena.com.cn
中国电子行业投资信息网:http://www.ceiinet.gov.cn/default.asp
中国通信信息网:http://www.cnii.com.cn/
中国通信电源情报网:http://www.b2bic.com/default.aspx
中国元器件在线:http://www.ieechina.com/
中国集成电路杂志网:http://www.cicmag.com/
中国IC网:http://www.ic37.com/
中原电子:http://www.ccelec.com/
中国工控信息网:http://www.7613.com/
中国工业电器网:http://eleccn.net/
中日液晶网:http://www.yj-lcd.com/main.php
中华液晶网:http://cn.fpdisplay.com/
中国触摸屏网:http://www.51touch.com/
中国汽车影音网:http://www.carcav.com/
中国电子DIY:http://www.prcdiy.com
中国通信论坛:http://www.cntx.cn/
中国国防电子网:http://www.gfang.cn/
中国电源行业资讯网:http://www.cpsa.com.cn/index/index.asp
中国电源网:http://www.china-power.net/
中国电力信息港:http://www.chinesesc.com/
中国智能水表网:http://www.watermeter.cn/watermeter/Index.asp
中国EDA技术网:http://www.51eda.com/
中国软硬件结合技术网:http://www.91tech.net/
中国自动化网:http://www.automation.com.cn/
中国分析仪器网:http://www.54pc.com/
中国机械信息网:http://www.machineinfo.com/
中国机电企业网:http://www.eecce.com/
中国电池在线:http://www.chinabatteryonline.com/
中国家电维修网:http://www.3811111.com/
专业电脑电子书店:http://www.netyi.net/
智能卡资讯:http://info.cardease.net/index.asp
照明藏金阁:http://lib.5izm.net/
------------------------------------------------------------------
高频电路技术:
盛盈射频:http://www.morerfid.com.cn/
射频网:http://www.21rf.com
=========================================================================
常去的电子论坛:
单片机大侠论坛:http://www.daxia.com/bbs/find.asp?type=0
http://www.c51bbs.com/c51bbs/find.asp
21icbbs: http://www.21icbbs.com(热)
pcb技术网:http://www.pcbbbs.com(热)
FPGA论坛: http://www.edacn.net/cgi-bin/leoboard.cgi(热)
61IC社区(DSP用):http://www.61ic.com/bbs/index.asp(热)
嵌入式论坛:http://bbs.edw.com.cn
=========================================================================
产品品质论坛:http://bbs.6sq.net
中国电器论坛:http://www.eleccn.com/bbs/
单片机论坛:http://www.laogu.com/laogubbs/
中国电子顶级开发网论坛:http://www.eetop.com.cn/cgi-bin/leoboard.cgi
SMT技术论坛:http://bbs.smt.cn

电磁兼容论坛:http://www.emcchina.net

老古开发网:http://www.laogu.com/laogubbs/index.asp
中华安防论坛:http://www.cpsbbs.com/
防雷技术论坛:http://www.lightning.com.cn/bbs/
ZG电力自动化:http://www.zgepsa.com/
电工之家:http://www.dgzj.cn/dgbbs/
中国通信论坛:http://www.cntx.cn/lt/index.asp
中国工业电器论坛:http://bbs.cnelc.com/index.asp
中国电力社区:http://www.powerclub.cn/2005/bbs/
质诚中国:http://club.qschina.com/
中国电磁兼容性技术论坛:http://www.emcchina.net/
可靠性论坛:http://www.chinarel.com/bbs/
工控论坛:http://www.gktd.com/index.asp
单片机大侠论坛:http://www.mcu51.com/bbs/find.asp(热)
视觉论坛:http://www.china-vision.net/bbs/index.asp
数字电视论坛:http://www.dvbcn.com/bbs/
千家论坛:http://www.1000bbs.com/(热)
中国广电论坛:http://www.rtvmaster.com/
流媒体世界:http://liumeiti.org/forum/
USB开发论坛:http://www.usbing.net/bbs/Boards.asp
驱动开发论坛:http://www.driverdevelop.com/forum/index.php
综合电子论坛:http://www.avrw.com/bbs/
液晶之友:http://www.lcdfriends.com/
液晶之家:http://www.fpdclub.net/
中国汽车影音网论坛:http://www.carcav.com/bbs/(热)
51耳机论坛:http://www.51erji.com/bbs/index.asp(热)
高奇论坛:http://www.goldenchip.com.cn/gdbbs/index.asp(PIC)
利尔达单片机论坛:http://www.lierda.com/bbs/
智能卡论坛:http://bbs.cardease.net/index.asp
水晶论坛:http://bbs.downsurf.com/index.asp(软件下载)
zoglab: http://bbs.zoglab.com/index.php
网上读书园地:http://www.readfree.net/bbs/index.php


点击此处查看原文 >>

系统分类: 消费电子   |    用户分类:    |    来源: 整理

评论(0) | 阅读(140)
发表于:2008-4-29 19:25:39
标签:无标签

0

评论(0) | 阅读(45)
发表于:2008-4-29 13:32:57
标签:无标签

0

嵌入式下的C语言细节问题

最近一直在用vc++6.0做c编程练习。可能笔者是新手,以前用tubor c的时候没注意到,在写完main()函数后,如果出现错误的话必定包含下面一句话warning C4508: 'main' : function should return a value; 'void' return type assumed,Error executing cl.exe.但是没有错误的时候是不会出现的很奇怪。

后来发现是少了一句return 0.因为在tc中从来不需要再main函数后加return,因此笔者又上网查询资料return 的用法,最后从一个名为“剑在上海”的blog里发现,本来想自己叙述的却发现语言没有人家的流畅还是原文摘录吧呵呵:

我一直以为C/C++的main(C#是Main)和C#一样可以void/int
但C/C++中void main()是错误的
C中可以用main(),因为C把这个当成int main() //C把int当作默认类型,而()表示接受任何参数。C的标准写法是int main(void),这个void显式地说明函数不接受任何参数
C++只好是写int main()了 //C++中int不是默认类型,()表示不接受任何参数
很多书中都写出了void main(),真是害人不浅(尤其是出现于广大校园中的老潭的书)
c:
main(),int main(),main(void)//C89可用
int main(void) //标准
{.........
return 0; //部分编译器自动加上
}
c++:
int main() //标准
{.........
return 0; //部分编译器自动加上
}

关于C语言中return的一些总结

return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值.
也有这样的,return;不返回值,直接退出函数
void xx()
{…………
return;
}
说到return,有必要提及主函数的定义,下面是从网络上找到的资料,好好消化吧,对了解主函数中返回值的理解有很大的帮助.


很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。

C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /*... */ } is not and never has been C++, nor has it even been C. ( void main( ) 从来就不存在于 C++ 或者 C )。
下面我分别说一下 C 和 C++ 标准中对 main 函数的定义。

  • “The C programming Language(《C 程序设计语言》)用的就是 main( )。”--- 这是因为第一版的C语言只有一种类型,那就是int,没有char,没有long,没有float,…………既然只有一种类型,那么就可以不写,后来的改进版为了兼容以前的代码于是规定:不明确标明返回值的,默认返回值为int,也就是说 main()等同于intmain(),而不是等同于void main()。在C99中,标准要求编译器至少给 main() 这种用法来个警告。


 

  • 一般来讲在C里可以写"main()",这是因为C把int当作默认类型,凡是没给类型的都当作int。如果你在C里声明一个变量,比如“i”,然后没给类型说明符,那么编译器会把它当int类型。


 

  • C++就不这么干了,尤其是标准的C++,就不把int当作默认类型,所以写main函数的时候,你要写明是int类型


 

  • 另外一点值得一提的是main后面的这个括号“()”,他在C++里面表示不接受任何参数,而在C里面则表示接受任何参数在C里,不接受任何参数,一般指明void。所以,在C里,main函数的声明,可以是“int main(void)”。



1、C

在 C89 中,main( ) 是可以接受的。Brian W. Kernighan 和 Dennis M. Ritchie 的经典巨著 The C programming Language 2e(《C 程序设计语言第二版》)用的就是 main( )。不过在最新的 C99 标准中,只有以下两种定义方式是正确的:
int main( void )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 9899:1999 (E) Programming languages — C 5.1.2.2.1Program startup)

当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成 char **argv;argv 和argc 可以改成别的变量名(如 intval 和charval),不过一定要符合变量的命名规则。

如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。
main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统)。

如果 main 函数的最后没有写 return 语句的话,C99 规定编译器要自动在生成的目标文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。注意,vc6不会在目标文件中加入 return 0; ,大概是因为 vc6 是 98 年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上 return 语句了吧!不过,gcc3.2(Linux 下的 C 编译器)会在生成的目标文件中加入 return 0; 。

2、C++

C++98 中定义了如下两种 main 函数的定义方式:
int main( )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 14882(1998-9-01)Programminglanguages — C++ 3.6 Start and termination)

int main( ) 等同于 C99 中的 intmain( void ) ;int main( int argc, char *argv[] ) 的用法也和 C99 中定义的一样。同样, main 函数的返回值类型也必须是int。如果main函数的末尾没写return语句,C++98 规定编译器要自动在生成的目标文件中加入 return 0; 。同样,vc6 也不支持这个特性,但是 g++3.2(Linux 下的 C++ 编译器)支持。

3、关于void main

在 C 和 C++ 中,不接收任何参数也不返回任何信息的函数原型为“void foo(void);”。可能正是因为这个,所以很多人都误认为如果不需要程序返回值时可以把main函数定义成void main(void) 。
然而这是错误的!main 函数的返回值应该定义为 int 类型,C 和 C++ 标准中都是这样规定的。虽然在一些编译器中,void main 可以通过编译(如 vc6),但并非所有编译器都支持 void main ,因为标准中从来没有定义过 void main 。g++3.2 中如果 main 函数的返回值不是 int 类型,就根本通 不过编译。而 gcc3.2 则会发出警告。所以,如果你想你的程序拥有很好的可移植性,请一定要用 int main 。

4、返回值的作用

main 函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出,否则代表程序异常退出。下面我们在 winxp 环境下做一个小实验。首先编译下面的程序:
int main( void )
{
return 0;
}

然后打开附件里的“命令提示符”,在命令行里运行刚才编译好的可执行文件,然后输入“echo %ERRORLEVEL%”,回车,就可以看到程序的返回 值为 0 。假设刚才编译好的文件是 a.exe ,如果输入“a && dir”,则会列出当前目录下的文件夹和文件。但是如果改成 “return -1”,或者别的非 0 值,重新编译后输入“a && dir”,则 dir 不会执行。因为 && 的含义是:如果 && 前面的程序正常退出,则继续执行 && 后面的程序,否则不执行。也就是说,利用程序的返回值,我们可以控制要不要执行下一个程序。这就是 int main 的好处。如果你有兴趣,也可以把 main 函数的返回值类型改成非 int 类型(如 float),重新编译后执行“a && dir”,看看会出现什么情况,想想为什么会出现那样的情况。顺便提一下,如果输入 a || dir 的话,则表示如果 a 异常退出,则执行 dir 。

5、那么 intmain(intargc,char*argv[],char*envp[])呢?

这当然也不是标准 C 里面定义的东西!char*envp[] 是某些编译器提供的扩展功能,用于获取系统的环境变量。因为不是标准,所以并非所有编译器都支持,故而移植性差,不推荐使用。

到了这里,你应该了解为什么主函数定义为 int返回类型,而且函数体里面有return 0;这个语句了吧.
下面具体说说我对return的应用的理解。

只要一个函数的返回值是数字型的,那么就可以返回0(即return 0),其实你返回多少都没问题。一般情况下,C++做出来的函数都要求返回一个值,当函数执行正常,且达到了一般情况下的目的,那么就返回0表示正确的调 用了该函数,这个0就是返回给主调函数以通知没有出错的;如果函数调用中出错,或者没有按照一般情况执行,那么就返回1,以告知主调函数采取响应策略;如 果你在某个函数所在类的定义所在的头文件中定义了一组状态值(一般都是负整数),那么函数就可以返回不同的值以告之主调函数具体发生了什么异常或错误,这种情况一般用于函数功能独立性较差的的情况。所以一般不鼓励把函数返回类型定义为void,至少返回应该是int,而在函数的最后加上return 0.语句:
int func(参数列表)
{
……
……
……
Return 0;
}

在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
如果你定义一个函数有返回类型,可以想下面那样调用:
int func()
{
int value;
……
……
……
return value;
}
int main()
{
int intvalue;
intvalue=func();
……
……
return 0;
}

return语句后面具体是什么内容,这就要具体情况具体分析了:

(1) 在返回类型是char的函数中,return后应该是char类型的值;
(2)在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int 类型就行了
(3)在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。

总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。

有好的意见大家交流,通过这件事我就是想说编程中的小细节,通过对小细节的追根究底可以让自己提高尤其是刚刚脱离课本的新手来说。最起码我现在对return的认识比以前加深了

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 转贴

评论(0) | 阅读(84)
发表于:2008-4-29 13:32:55
标签:无标签

0

嵌入式下的C语言细节问题

最近一直在用vc++6.0做c编程练习。可能笔者是新手,以前用tubor c的时候没注意到,在写完main()函数后,如果出现错误的话必定包含下面一句话warning C4508: 'main' : function should return a value; 'void' return type assumed,Error executing cl.exe.但是没有错误的时候是不会出现的很奇怪。

后来发现是少了一句return 0.因为在tc中从来不需要再main函数后加return,因此笔者又上网查询资料return 的用法,最后从一个名为“剑在上海”的blog里发现,本来想自己叙述的却发现语言没有人家的流畅还是原文摘录吧呵呵:

我一直以为C/C++的main(C#是Main)和C#一样可以void/int
但C/C++中void main()是错误的
C中可以用main(),因为C把这个当成int main() //C把int当作默认类型,而()表示接受任何参数。C的标准写法是int main(void),这个void显式地说明函数不接受任何参数
C++只好是写int main()了 //C++中int不是默认类型,()表示不接受任何参数
很多书中都写出了void main(),真是害人不浅(尤其是出现于广大校园中的老潭的书)
c:
main(),int main(),main(void)//C89可用
int main(void) //标准
{.........
return 0; //部分编译器自动加上
}
c++:
int main() //标准
{.........
return 0; //部分编译器自动加上
}

关于C语言中return的一些总结

return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值.
也有这样的,return;不返回值,直接退出函数
void xx()
{…………
return;
}
说到return,有必要提及主函数的定义,下面是从网络上找到的资料,好好消化吧,对了解主函数中返回值的理解有很大的帮助.


很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。

C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /*... */ } is not and never has been C++, nor has it even been C. ( void main( ) 从来就不存在于 C++ 或者 C )。
下面我分别说一下 C 和 C++ 标准中对 main 函数的定义。

  • “The C programming Language(《C 程序设计语言》)用的就是 main( )。”--- 这是因为第一版的C语言只有一种类型,那就是int,没有char,没有long,没有float,…………既然只有一种类型,那么就可以不写,后来的改进版为了兼容以前的代码于是规定:不明确标明返回值的,默认返回值为int,也就是说 main()等同于intmain(),而不是等同于void main()。在C99中,标准要求编译器至少给 main() 这种用法来个警告。


 

  • 一般来讲在C里可以写"main()",这是因为C把int当作默认类型,凡是没给类型的都当作int。如果你在C里声明一个变量,比如“i”,然后没给类型说明符,那么编译器会把它当int类型。


 

  • C++就不这么干了,尤其是标准的C++,就不把int当作默认类型,所以写main函数的时候,你要写明是int类型


 

  • 另外一点值得一提的是main后面的这个括号“()”,他在C++里面表示不接受任何参数,而在C里面则表示接受任何参数在C里,不接受任何参数,一般指明void。所以,在C里,main函数的声明,可以是“int main(void)”。



1、C

在 C89 中,main( ) 是可以接受的。Brian W. Kernighan 和 Dennis M. Ritchie 的经典巨著 The C programming Language 2e(《C 程序设计语言第二版》)用的就是 main( )。不过在最新的 C99 标准中,只有以下两种定义方式是正确的:
int main( void )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 9899:1999 (E) Programming languages — C 5.1.2.2.1Program startup)

当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成 char **argv;argv 和argc 可以改成别的变量名(如 intval 和charval),不过一定要符合变量的命名规则。

如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。
main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统)。

如果 main 函数的最后没有写 return 语句的话,C99 规定编译器要自动在生成的目标文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。注意,vc6不会在目标文件中加入 return 0; ,大概是因为 vc6 是 98 年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上 return 语句了吧!不过,gcc3.2(Linux 下的 C 编译器)会在生成的目标文件中加入 return 0; 。

2、C++

C++98 中定义了如下两种 main 函数的定义方式:
int main( )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 14882(1998-9-01)Programminglanguages — C++ 3.6 Start and termination)

int main( ) 等同于 C99 中的 intmain( void ) ;int main( int argc, char *argv[] ) 的用法也和 C99 中定义的一样。同样, main 函数的返回值类型也必须是int。如果main函数的末尾没写return语句,C++98 规定编译器要自动在生成的目标文件中加入 return 0; 。同样,vc6 也不支持这个特性,但是 g++3.2(Linux 下的 C++ 编译器)支持。

3、关于void main

在 C 和 C++ 中,不接收任何参数也不返回任何信息的函数原型为“void foo(void);”。可能正是因为这个,所以很多人都误认为如果不需要程序返回值时可以把main函数定义成void main(void) 。
然而这是错误的!main 函数的返回值应该定义为 int 类型,C 和 C++ 标准中都是这样规定的。虽然在一些编译器中,void main 可以通过编译(如 vc6),但并非所有编译器都支持 void main ,因为标准中从来没有定义过 void main 。g++3.2 中如果 main 函数的返回值不是 int 类型,就根本通 不过编译。而 gcc3.2 则会发出警告。所以,如果你想你的程序拥有很好的可移植性,请一定要用 int main 。

4、返回值的作用

main 函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出,否则代表程序异常退出。下面我们在 winxp 环境下做一个小实验。首先编译下面的程序:
int main( void )
{
return 0;
}

然后打开附件里的“命令提示符”,在命令行里运行刚才编译好的可执行文件,然后输入“echo %ERRORLEVEL%”,回车,就可以看到程序的返回 值为 0 。假设刚才编译好的文件是 a.exe ,如果输入“a && dir”,则会列出当前目录下的文件夹和文件。但是如果改成 “return -1”,或者别的非 0 值,重新编译后输入“a && dir”,则 dir 不会执行。因为 && 的含义是:如果 && 前面的程序正常退出,则继续执行 && 后面的程序,否则不执行。也就是说,利用程序的返回值,我们可以控制要不要执行下一个程序。这就是 int main 的好处。如果你有兴趣,也可以把 main 函数的返回值类型改成非 int 类型(如 float),重新编译后执行“a && dir”,看看会出现什么情况,想想为什么会出现那样的情况。顺便提一下,如果输入 a || dir 的话,则表示如果 a 异常退出,则执行 dir 。

5、那么 intmain(intargc,char*argv[],char*envp[])呢?

这当然也不是标准 C 里面定义的东西!char*envp[] 是某些编译器提供的扩展功能,用于获取系统的环境变量。因为不是标准,所以并非所有编译器都支持,故而移植性差,不推荐使用。

到了这里,你应该了解为什么主函数定义为 int返回类型,而且函数体里面有return 0;这个语句了吧.
下面具体说说我对return的应用的理解。

只要一个函数的返回值是数字型的,那么就可以返回0(即return 0),其实你返回多少都没问题。一般情况下,C++做出来的函数都要求返回一个值,当函数执行正常,且达到了一般情况下的目的,那么就返回0表示正确的调 用了该函数,这个0就是返回给主调函数以通知没有出错的;如果函数调用中出错,或者没有按照一般情况执行,那么就返回1,以告知主调函数采取响应策略;如 果你在某个函数所在类的定义所在的头文件中定义了一组状态值(一般都是负整数),那么函数就可以返回不同的值以告之主调函数具体发生了什么异常或错误,这种情况一般用于函数功能独立性较差的的情况。所以一般不鼓励把函数返回类型定义为void,至少返回应该是int,而在函数的最后加上return 0.语句:
int func(参数列表)
{
……
……
……
Return 0;
}

在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
如果你定义一个函数有返回类型,可以想下面那样调用:
int func()
{
int value;
……
……
……
return value;
}
int main()
{
int intvalue;
intvalue=func();
……
……
return 0;
}

return语句后面具体是什么内容,这就要具体情况具体分析了:

(1) 在返回类型是char的函数中,return后应该是char类型的值;
(2)在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int 类型就行了
(3)在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。

总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。

有好的意见大家交流,通过这件事我就是想说编程中的小细节,通过对小细节的追根究底可以让自己提高尤其是刚刚脱离课本的新手来说。最起码我现在对return的认识比以前加深了

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类:    |    来源: 转贴

评论(0) | 阅读(61)
发表于:2008-4-29 13:32:44
标签:无标签

1

嵌入式下的C语言细节问题

最近一直在用vc++6.0做c编程练习。可能笔者是新手,以前用tubor c的时候没注意到,在写完main()函数后,如果出现错误的话必定包含下面一句话warning C4508: 'main' : function should return a value; 'void' return type assumed,Error executing cl.exe.但是没有错误的时候是不会出现的很奇怪。

后来发现是少了一句return 0.因为在tc中从来不需要再main函数后加return,因此笔者又上网查询资料return 的用法,最后从一个名为“剑在上海”的blog里发现,本来想自己叙述的却发现语言没有人家的流畅还是原文摘录吧呵呵:

我一直以为C/C++的main(C#是Main)和C#一样可以void/int
但C/C++中void main()是错误的
C中可以用main(),因为C把这个当成int main() //C把int当作默认类型,而()表示接受任何参数。C的标准写法是int main(void),这个void显式地说明函数不接受任何参数
C++只好是写int main()了 //C++中int不是默认类型,()表示不接受任何参数
很多书中都写出了void main(),真是害人不浅(尤其是出现于广大校园中的老潭的书)
c:
main(),int main(),main(void)//C89可用
int main(void) //标准
{.........
return 0; //部分编译器自动加上
}
c++:
int main() //标准
{.........
return 0; //部分编译器自动加上
}

关于C语言中return的一些总结

return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值.
也有这样的,return;不返回值,直接退出函数
void xx()
{…………
return;
}
说到return,有必要提及主函数的定义,下面是从网络上找到的资料,好好消化吧,对了解主函数中返回值的理解有很大的帮助.


很多人甚至市面上的一些书籍,都使用了void main( ) ,其实这是错误的。C/C++ 中从来没有定义过void main( ) 。

C++ 之父 Bjarne Stroustrup 在他的主页上的 FAQ 中明确地写着 The definition void main( ) { /*... */ } is not and never has been C++, nor has it even been C. ( void main( ) 从来就不存在于 C++ 或者 C )。
下面我分别说一下 C 和 C++ 标准中对 main 函数的定义。

  • “The C programming Language(《C 程序设计语言》)用的就是 main( )。”--- 这是因为第一版的C语言只有一种类型,那就是int,没有char,没有long,没有float,…………既然只有一种类型,那么就可以不写,后来的改进版为了兼容以前的代码于是规定:不明确标明返回值的,默认返回值为int,也就是说 main()等同于intmain(),而不是等同于void main()。在C99中,标准要求编译器至少给 main() 这种用法来个警告。


 

  • 一般来讲在C里可以写"main()",这是因为C把int当作默认类型,凡是没给类型的都当作int。如果你在C里声明一个变量,比如“i”,然后没给类型说明符,那么编译器会把它当int类型。


 

  • C++就不这么干了,尤其是标准的C++,就不把int当作默认类型,所以写main函数的时候,你要写明是int类型


 

  • 另外一点值得一提的是main后面的这个括号“()”,他在C++里面表示不接受任何参数,而在C里面则表示接受任何参数在C里,不接受任何参数,一般指明void。所以,在C里,main函数的声明,可以是“int main(void)”。



1、C

在 C89 中,main( ) 是可以接受的。Brian W. Kernighan 和 Dennis M. Ritchie 的经典巨著 The C programming Language 2e(《C 程序设计语言第二版》)用的就是 main( )。不过在最新的 C99 标准中,只有以下两种定义方式是正确的:
int main( void )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 9899:1999 (E) Programming languages — C 5.1.2.2.1Program startup)

当然,我们也可以做一点小小的改动。例如:char *argv[] 可以写成 char **argv;argv 和argc 可以改成别的变量名(如 intval 和charval),不过一定要符合变量的命名规则。

如果不需要从命令行中获取参数,请用int main(void) ;否则请用int main( int argc, char *argv[] ) 。
main 函数的返回值类型必须是 int ,这样返回值才能传递给程序的激活者(如操作系统)。

如果 main 函数的最后没有写 return 语句的话,C99 规定编译器要自动在生成的目标文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return 语句,虽然没有这个必要,但这是一个好的习惯。注意,vc6不会在目标文件中加入 return 0; ,大概是因为 vc6 是 98 年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上 return 语句了吧!不过,gcc3.2(Linux 下的 C 编译器)会在生成的目标文件中加入 return 0; 。

2、C++

C++98 中定义了如下两种 main 函数的定义方式:
int main( )
int main( int argc, char *argv[] )
(参考资料:ISO/IEC 14882(1998-9-01)Programminglanguages — C++ 3.6 Start and termination)

int main( ) 等同于 C99 中的 intmain( void ) ;int main( int argc, char *argv[] ) 的用法也和 C99 中定义的一样。同样, main 函数的返回值类型也必须是int。如果main函数的末尾没写return语句,C++98 规定编译器要自动在生成的目标文件中加入 return 0; 。同样,vc6 也不支持这个特性,但是 g++3.2(Linux 下的 C++ 编译器)支持。

3、关于void main

在 C 和 C++ 中,不接收任何参数也不返回任何信息的函数原型为“void foo(void);”。可能正是因为这个,所以很多人都误认为如果不需要程序返回值时可以把main函数定义成void main(void) 。
然而这是错误的!main 函数的返回值应该定义为 int 类型,C 和 C++ 标准中都是这样规定的。虽然在一些编译器中,void main 可以通过编译(如 vc6),但并非所有编译器都支持 void main ,因为标准中从来没有定义过 void main 。g++3.2 中如果 main 函数的返回值不是 int 类型,就根本通 不过编译。而 gcc3.2 则会发出警告。所以,如果你想你的程序拥有很好的可移植性,请一定要用 int main 。

4、返回值的作用

main 函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出,否则代表程序异常退出。下面我们在 winxp 环境下做一个小实验。首先编译下面的程序:
int main( void )
{
return 0;
}

然后打开附件里的“命令提示符”,在命令行里运行刚才编译好的可执行文件,然后输入“echo %ERRORLEVEL%”,回车,就可以看到程序的返回 值为 0 。假设刚才编译好的文件是 a.exe ,如果输入“a && dir”,则会列出当前目录下的文件夹和文件。但是如果改成 “return -1”,或者别的非 0 值,重新编译后输入“a && dir”,则 dir 不会执行。因为 && 的含义是:如果 && 前面的程序正常退出,则继续执行 && 后面的程序,否则不执行。也就是说,利用程序的返回值,我们可以控制要不要执行下一个程序。这就是 int main 的好处。如果你有兴趣,也可以把 main 函数的返回值类型改成非 int 类型(如 float),重新编译后执行“a && dir”,看看会出现什么情况,想想为什么会出现那样的情况。顺便提一下,如果输入 a || dir 的话,则表示如果 a 异常退出,则执行 dir 。

5、那么 intmain(intargc,char*argv[],char*envp[])呢?

这当然也不是标准 C 里面定义的东西!char*envp[] 是某些编译器提供的扩展功能,用于获取系统的环境变量。因为不是标准,所以并非所有编译器都支持,故而移植性差,不推荐使用。

到了这里,你应该了解为什么主函数定义为 int返回类型,而且函数体里面有return 0;这个语句了吧.
下面具体说说我对return的应用的理解。

只要一个函数的返回值是数字型的,那么就可以返回0(即return 0),其实你返回多少都没问题。一般情况下,C++做出来的函数都要求返回一个值,当函数执行正常,且达到了一般情况下的目的,那么就返回0表示正确的调 用了该函数,这个0就是返回给主调函数以通知没有出错的;如果函数调用中出错,或者没有按照一般情况执行,那么就返回1,以告知主调函数采取响应策略;如 果你在某个函数所在类的定义所在的头文件中定义了一组状态值(一般都是负整数),那么函数就可以返回不同的值以告之主调函数具体发生了什么异常或错误,这种情况一般用于函数功能独立性较差的的情况。所以一般不鼓励把函数返回类型定义为void,至少返回应该是int,而在函数的最后加上return 0.语句:
int func(参数列表)
{
……
……
……
Return 0;
}

在函数中,如果碰到return 语句,那么程序就会返回调用该函数的下一条语句执行,也就是说跳出函数的执行,回到原来的地方继续执行下去。但是如果是在主函数中碰到return语句,那么整个程序就会停止,退出程序的执行。
如果你定义一个函数有返回类型,可以想下面那样调用:
int func()
{
int value;
……
……
……
return value;
}
int main()
{
int intvalue;
intvalue=func();
……
……
return 0;
}

return语句后面具体是什么内容,这就要具体情况具体分析了:

(1) 在返回类型是char的函数中,return后应该是char类型的值;
(2)在返回类型是int的函数中,如果是要停止函数的调用,最好应该为0;其他的按照你的目的而定,只要是int 类型就行了
(3)在返回类型是结构类型的函数中,return后应该是结构的一个实例对象。

总之,函数定义为什么样的返回类型,该函数中return后就应该是相应类型的值。

有好的意见大家交流,通过这件事我就是想说编程中的小细节,通过对小细节的追根究底可以让自己提高尤其是刚刚脱离课本的新手来说。最起码我现在对return的认识比以前加深了

点击此处查看原文 >>

系统分类: 嵌入式   |    用户分类: 无分类    |    来源: 转贴

评论(0) | 阅读(55)
发表于:2008-4-21 16:28:40
标签:无标签

0

如果你不想一辈子做工程师,必看!

李一男2003 年在港湾给开发人员培训时的语录
作者:【三石】

[1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐渐对该行业深入了解,不要频繁跳槽,特别是不要为了一点工资而转移阵 地,从长远看,这点钱根本不算什么,当你对一个行业有那么几年的体会,以后钱根本不是问题。频繁地动荡不是上策,最后你对哪个行业都没有摸透,永远是新手!

[2]可以做技术,切不可沉湎于技术。千万不可一门心思钻研技术!给自己很大压力,如果你的心思全 部放在这上面,那么注定你将成为孔乙己一类的人物!适可而止为之,因为技术只不过是你今后前途的支柱之一,而且还不是最大的支柱,除非你只愿意到老还是个工程师!

[3]不要去做技术高手,只去做综合素质高手!在企业里混,我们时常瞧不起某人,说他“什么都不懂,凭啥拿那么多钱,凭啥升官!”这是普遍的典型的工程师的迂腐之言。8051 很牛吗?人家能上去必然有他的本事,而且是你没有的本事。你想想,老板搞经营那么多年, 难道见识不如你这个新兵?人家或许善于管理,善于领会老板意图,善于部门协调等等。因此务必培养自己多方面的能力,包括管理,亲和力,察言观色能力,攻关能力等,要成为综合素质的高手,则前途无量,否则只能躲在角落看示波器!技术以外的技能才是更重要的本 事!!从古到今,美国日本,一律如此!

[4]多交社会三教九流的朋友!不要只和工程师交往,认为有共同语言,其实更重要的是和其他类人物交往,如果你希望有朝一日当老板或高层管理,那么你整日面对的就是这些人。了解他们的经历,思维习惯,爱好,学习他们处理问题的模式,了解社会各个角落的现象和问题 ,这是以后发展的巨大的本钱,没有这些以后就会笨手笨脚,跌跌撞撞,遇到重重困难,交不少学费,成功的概率大大降低!

[5]知识涉猎不一定专,但一定要广!多看看其他方面的书,金融,财会,进出口,税务,法律等等,为以后做一些积累,以后的用处会更大!会少交许多学费!!

[6]抓住时机向技术管理或市场销售方面的转变!要想有前途就不能一直搞开发,适当时候要转变为管理或销售,前途会更大,以前搞技术也没有白搞,以后还用得着。搞管理可以培养自己的领导能力,搞销售可以培养自己的市场概念和思维,同时为自己以后发展积累庞大的人 脉!应该说这才是前途的真正支柱。。?

[7]逐渐克服自己的心里弱点和性格缺陷!多疑,敏感,天真(贬义,并不可爱),犹豫不决,胆怯,多虑,脸皮太薄,心不够黑,教条式思维。。。这些工程师普遍存在的性格弱点必须改变!很难吗?只在床上想一想当然不可能,去帮朋友守一个月地摊,包准有效果,去实践 ,而不要只想!不克服这些缺点,一切不可能,甚至连项目经理都当不好--尽管你可能技术不错!

[8]工作的同时要为以后做准备!建立自己的工作环境!及早为自己配置一个工作环境,装备电脑,示波器(可以买个二手的),仿真器,编程器等,业余可以接点活,一方面接触市场,培养市场感觉,同时也积累资金,更重要的是准备自己的产品,咱搞技术的没有钱,只有技 术,技术的代表不是学历和证书,而是产品,拿出象样的产品,就可技术转让或与人合作搞企业!先把东西准备好,等待机会,否则,有了机会也抓不住!

[9]要学会善于推销自己!不仅要能干,还要能说,能写,善于利用一切机会推销自己,树立自己的品牌形象,很必要!要创造条件让别人了解自己,不然老板怎么知道你能干?外面的投资人怎么相信你?提早把自己推销出去,机会自然会来找你!搞个个人主页是个好注意!! 特别是培养自己在行业的名气,有了名气,高薪机会自不在话下,更重要的是有合作的机会...

[10]该出手时便出手!永远不可能有100%把握!!!条件差不多就要大胆去干,去闯出自己的事业,不要犹豫,不要彷徨,干了不一定成功,但至少为下一次冲击积累了经验,不干永远没出息,而且要干成必然要经历失败。不经历风雨,怎么见彩虹,没有人能随随便便成功 !

点击此处查看原文 >>

系统分类: 单片机   |    用户分类:    |    来源: 转贴

评论(0) | 阅读(49)
发表于:2008-4-20 21:55:11
标签:无标签

0

如何成为一个优秀的程序员

我们的老师每天都要应对报名者和学员提出的很多同样的问题,以下是这类典型问题的汇总:嵌入式行业(或者IT业)有没有前途?我听说编程编到三十五岁就没人要了,一定要转行找出路是吗?做驱动开发和做应用开发哪个更有前途?我一开始看什么书都看不懂,怎么才能理出一个学习顺序?诸如此类。这使我迫切地感觉到,应该总结这样一份非具体技术问题的FAQ了。本文仅代表我个人观点,有问题欢迎Email: songjinshan@akaedu.org。

在看这份FAQ之前,你必须先读完ESR的《如何成为一名黑客》(本文末尾附有中译版),该文所讲过的道理我不再重复。该文用很大的篇幅讲什么是黑客文化,虽然态度和信仰的确是成功的最关键因素,但是你肯定会想,做不做黑客跟我没关系,我只是想学个一技之长,找个好工作而已,对吧?那么肯定更希望获得一些具体的可操作的指导。

1、各种软件技术之间是怎样的关系?
我把软件技术分为三个层次:
问题域:计算机图形学、音视频编码、信息安全、模式识别、信息检索、自然语言分析、人工智能、科学计算等;
系统集成:C++和Java等面向对象语言、Python等解释型语言、LISP等函数式编程语言、GUI、中间件、编译器与解释器、虚拟机、数据库、网络服务、并行计算、集群、Peer2Peer、系统管理等;

系统功能:硬件描述语言、计算机体系结构与编程模型、指令集与汇编语言、C语言、内核、文件系统、设备驱动、网络协议、POSIX等。

计算机最终是做什么用的呢?最终是通过问题域的各种技术为用户解决问题的,这些技术都包含很高深的算法,然而它们必须在一个平台上运行,它们需要利用平台提供的各种基础设施,比如计算能力、I/O能力和网络互联能力。系统功能和系统集成层就是用来实现这个平台的。系统功能层实现计算、I/O和网络的基本功能,系统集成层对这些基本功能做一些抽象和包装,提供更方便灵活的接口。

2、为什么要学习嵌入式技术?
在亚嵌的学习期间,你将详细了解系统功能层的各部分是如何工作的,也会在面向对象编程、GUI、数据库、网络服务等系统集成层的技术方向进行探索。嵌入式系统可说是麻雀虽小五脏俱全,虽然没有PC和服务器那么复杂,但计算机系统的各种组成一样也不缺。因此,以嵌入式系统作为切入点开始学习软件技术是非常好的选择,避开不必要的复杂性,把握计算机系统最根本的概念和技术要点。打下扎实的基础之后,你的职业发展则完全不必局限于嵌入式领域,即使你日后做PC或服务器开发,在亚嵌所学的知识和技能同样使你终生受益。正如庖丁解牛,心中有全牛,自然就能游刃有余。

另一方面,你一定见到各大网站都有大量的宣传,说现在嵌入式行业前景空前的好,嵌入式人才紧缺,有几百万职位空缺等等。这些说法也是对的,但我们需要更深入地理解这说明了什么问题。刚才我们说,嵌入式系统也是一个完整的计算机系统,和PC或服务器没有本质的区别,事实上,嵌入式、PC和服务器的界限已经越来越模糊了。以前的嵌入式就是单片机,只能做简单的运算处理,现在的ARM处理器性能比从前的奔腾还强,打游戏、看电影都没问题,谁能说它不是PC呢?另外有些专用的嵌入式系统已经在充当服务器的功能了,而集群技术更是可以使许多廉价的处理器组合在一起发挥大型服务器的作用。由于嵌入式越来越多地应用到电器、汽车和各种设施上,无处不在,并且与PC、服务器呈融合的趋势,所以嵌入式行业前景空前的好。

那么,为什么说嵌入式人才紧缺呢?其实,学嵌入式系统就是学计算机系统,本质上并没有什么特殊的只有嵌入式系统才有的技术。说嵌入式人才紧缺,其实质上是说真正懂计算机的人才紧缺。现在很多学校的所谓“软件学院”培养的软件人才都是一叶障目不见泰山的:只懂J2EE和.NET,没学过C和汇编;只会调库函数sort(),而对各种排序算法一无所知;设计模式、软件工程讲得头头是道,却不知道好的软件还是要靠牛人靠智商来做的。培养人像蒸包子一样一屉一屉地出,靠软件工程搭一条生产线,然后让熟练工人站在生产线上拧螺丝,幻想着这样就能生产出好的软件,那是把软件工程和程序员的作用本末倒置了。现在嵌入式开发对程序员的素质要求更高了,以上这类“软件人才”不能胜任了,因此说嵌入式人才紧缺。亚嵌的就业班虽然只有几个月,但培养目标是有完整的计算机系统概念的软件人才,而不是只会拧螺丝的软件工人,这正得益于我们始终坚持做嵌入式培训而不是Java或.NET培训。

3、有人说软件技术变化太快,现在学的东西过两年就要完全淘汰,是吗?
你知道这话是什么人说的吗?必然是已经被淘汰的人说的。比如Delphi、BCB、PB这些开发工具和语言,都曾经很是风光了一阵,但现在已经完全被Java和.NET取代了。那么Java和.NET会不会被取代呢,也许在相当长的时间内还不会,但是我看好Python。

这些被淘汰的程序员有一些共同的特点:只会用鼠标拖拽控件,离开IDE就不知道如何工作,学点儿花拳绣腿的功夫就想吃一辈子,对学习新技术不感兴趣,做一天和尚撞一天钟。现在请回头看看FAQ1,在整个软件技术领域,这些变化快的技术其实只占了很小的一块,却成了这些人的全部看家本领,这样的人能不被淘汰吗?

与这些流行的开发工具和语言相反,很多技术和思想是很少变化的。比如,POSIX和SUS标准规定了一套系统函数接口和基本命令的语义,只有实现了这些才可以称作UNIX,因此今天的Linux、Solaris跟20多年前的UNIX在系统功能层上是基本一致的。而指导计算机科学发展的数学理论,甚至是老祖宗们在计算机还没诞生的年代就替我们想好的:布尔代数发表于19世纪,直到一个世纪后发明了计算机和数字电路才有了用武之地;数论在17世纪就出现了,一直都被数学家们当成一套好玩的理论,但只是好玩而已,直到计算机密码学诞生后才发现它的实际用处。

各种流行的开发工具和高级语言虽然变化很快,但是底层的编程语言却非常稳定,各种操作系统的内核都是用C语言写的,以前是这样,以后也不会改变。另一方面,各种编程语言的设计思想也是非常稳定的。其实世界上只有两种编程语言,一种是C,一种是LISP,前者是imperative的,是对计算机模型的抽象,后者是functional的,是对数学函数模型的抽象。面向对象是一种重要的软件工程思想,却算不上一种新的语言模型,应该归在C的一类。属于同一类的各种语言其实都大同小异,一个精通C++的人学习Java需要多长时间?熟悉语法一个星期,熟悉类库三个星期,一个月足矣,以往的经验都可以套到新的编程语言上。然而要想习得深厚的算法功底、逻辑思维和抽象思维修养,能够真正说清楚“系统”是什么,如何分析和设计“系统”,需要多长时间?恐怕要数十年。

4、C和Java哪种语言更好?
计算机科学与编程语言无关,甚至与计算机本身也没太大关系,它研究的对象并不是计算机,而是人分析问题解决问题的方法论。程序写出来最主要不是为了给计算机执行的,而是为了给人看的,使用编程语言和使用自然语言一样是为了表达和交流,只不过程序还可以顺便给计算机执行而已。

以上这些话并不是我说的,而是一位著名的计算机科学家说的。所以,在编程语言的层面上争论是没有意义的。很多初学者错误地认为掌握了编程语言就等于学会了计算机,一种编程语言都还没有掌握好,更没有上升到方法论的层面,只有这种无知的人才会去争论哪种语言好的问题。掌握了编程语言远远不等于学会了计算机,而只是最开始的一步,最简单的一步,到了工作中,用到什么语言就去学什么语言,什么语言过时了就丢掉,编程语言不需要积累因为它太简单了,真正需要积累的是方法论。

很多人喜欢参与到这类争论之中,毫无例外,每个人都在为自己熟练掌握的编程语言辩护,就是“我会的语言最好,我不会的语言都不好”,其实这些人真正想说的是“我会的语言最好是千秋万代,我就不必学新的语言,不必适应新的变化了”,概括起来说就是一个字,懒。真正的高手都是会很多编程语言的,国外有些做技术咨询的,每年都要学好几门新的编程语言,这样才能应对市场的变化。不断丢掉旧的编程语言学习新的,看起来好像完全是白费力气,没有积累,其实,每种编程语言的设计都有独到之处,体现了每种语言的精髓,在融汇百家之后积累下来的正是方法论。

争论哪种语言能做的事情更多、功能更强是没有意义的。从理论上说,任何一种符合图灵机模型的编程语言,加上适当的I/O扩展都可以做任何事情,用shell脚本也可以写出很像样的游戏来。只不过各种语言的设计目标不同,表达能力不同,做不同的事情所需的代码量不同而已。

另外一种错误认识是:哪种语言的市场最大,开发人员最多,哪种语言就最好。单从这种意义上说,Java的确比C更好,所以往届有学员问我们为什么只教C语言。请你注意,操作系统内核是用C写的,各种底层的应用程序包括Java虚拟机也是用C写的。如果你想学Java,在亚嵌的学习完成后你将有能力分析Java虚拟机的实现,站在计算机系统的高度来学Java才会使你成为真正的Java高手。如果你只想速成,想早点学成一门技术去做拧螺丝的工作,那么亚嵌不适合你。

在FAQ3里说过,世界上有C和LISP两种编程语言,你现在学了C,以后学了C++、Java、.NET等等,也仍然只认识了半个世界。LISP和Haskell构成了另外半个世界,现在很常见的Python和JavaScript等解释型语言也借用了functional programming的思想。如果你只管闷着头写代码,而不去广泛涉猎,那么你将错过很多精彩。

5、我听说编程编到三十五岁就没人要了一定要转行找出路是吗?
这个观点虽然很流行,但根本不值一驳。现在三十五岁转行的那些人,都具有前面所说的那些特征,对学习新技术不感兴趣,对探索计算机的本质不感兴趣,得过且过,下了班就是打游戏、看电视,总之就是懒。如果是开出租、摆摊,勤快人懒人都有饭吃,而IT这一行对懒人是非常无情的,懒人就不该入IT这一行,不从自身找原因,却到处散布这种言论,怪社会不好,打击新人的信心,着实可恨。

另外一种情况,编程编到三十五岁,进入公司的管理层,或者自己创业,这都是很勤快的人,如果他们把这种勤快用在技术上肯定也可以做得更好,所以也无法证明编程编到三十五岁会因为没有出路而转行。

编程不是个体力活,需要高强度的思考和智力投入,分析能力、思考能力都需要时间积累起来,所以并不是越年轻干得越好。相反,我认为三十岁以前写的代码都是垃圾,三十岁以后才能写出像样的程序来。如果希望一辈子走技术的道路而不会被迫转行,就要不断地把自己的工作性质从“体力活”变成“脑力活”。什么叫“不断地”变呢?这里的“体力活”并不是指种地、盖房子这种劳动,而是指简单重复地编写代码,这时你会感觉,派给你的工作都能凭以往的经验轻松应付了,但是千万不要满足于现状,就像温水煮青蛙一样,这是危险的处境!要摆脱这种处境就需要学习、思考、提高,让公司派给你更有挑战性的工作,在工作中应用新学到的知识和技术就是“脑力活”了,但是用得久了又会变成简单重复的“体力活”,这时就需要再学习、再提高,所以叫做“不断地”把自己的工作性质从“体力活”变成“脑力活”。如果有一天你发现,自己长期陷于简单重复的劳动之中,并且业余时间非常少,无法学习提高,这说明公司不会用人,你就该考虑跳糟了。

从另外一个角度来说,如果希望一辈子走技术的道路,就要有自己的核心竞争力,这个核心竞争力决不是凭以往的经验能够做某些工作的能力,而是学习能力、思考能力和解决有挑战性的新问题的潜力。在IT这一行,凭借以往的经验干重复的活是干不长久的,原因很简单,一个问题不会