﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-阵雨</title><link>http://www.cppblog.com/zhenyu/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 07 Apr 2026 22:56:19 GMT</lastBuildDate><pubDate>Tue, 07 Apr 2026 22:56:19 GMT</pubDate><ttl>60</ttl><item><title>[zt]上海，我的奋斗岁月zz</title><link>http://www.cppblog.com/zhenyu/archive/2006/12/03/15911.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Sat, 02 Dec 2006 17:11:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/12/03/15911.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/15911.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/12/03/15911.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/15911.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/15911.html</trackback:ping><description><![CDATA[
		<h3>
				<p>0，前言</p>
				<p>刚刚看了论坛里有的兄弟关于相亲的苦恼，想起自己在上海这五年的经历，不由感慨颇多。这位兄弟的这些苦恼，曾几何时也占据了我的头脑，让我痛苦不堪。然而，如今回首看来，这五年来也这是这些苦恼最终成为我前进的机遇，让我拥有了目前还算可以的生活境遇—700万身价，对有些兄弟来说可能是微不足道，但是我想大多数朋友还可能暂时没有达到这个状态---没有半点炫耀的意思，我知道朋友们很多都会成功，会比我强得多---所以会对我的经历感兴趣，我决定定下心来，好好写点文字，希望不会让朋友们失望。</p>
				<p>今天我的心里有一个想法更加清晰，那就是：爱，只有爱，才是一个男人成功的最好动力、最合适的动力。而绝不是自己的虚荣心，或者所谓的雄心壮志。作为一个男人，首要的一件事是你要有你的真正所爱。它会像原子弹一样激发你的能力，让你爆发无穷的动力，上帝也会为你感动。这样的状态，就是每个人梦寐以求的状态。</p>
				<p>朋友们，也许你们不同意我的看法，我们先不忙争论，您先看看我的经历，看看是不是有道理。</p>
				<br />
				<h3>
						<p>
								<br />1， 上海<br />1999年中，我辞去了刚刚分配的国家机关的工作，从新疆来到了上海。当时我踌躇满志，认为凭借自己的力量和努力一定能够在这个大都市里站稳脚跟，创下一片属于自己的天空。</p>
						<p>我是1976年出生在新疆，新疆的日照和高原气候，让我的身材像白杨一样挺拔，相貌虽不敢说英俊非凡，但也让绝大多数人不讨厌。我从小学习可以说是优异的，大学考上了国家排名前5的重点大学，当时分配是98年，父亲害怕工作难找，一定要我回去做个清闲稳定的机关公务员。我觉得自己也可以历练以下为人处事，就回到了新疆自治区政府。工作了几个月后，和本部门的同事混得极熟，喝酒、吹牛、查颜观色的本领提高飞快，但是觉得工作实在是研磨青春，浪费生命，就决定辞职，去上海打拼一下。呵呵，现在我的同学在新疆的也都混得很好。这是个性不同了。</p>
						<p>我的专业是经济管理类的，当时不懂事，自视颇高，到了上海我就傻了：这种人企业根本不要，他们要的是有一定技能的人，能干事的人，像我这种实际工作没做过的人根本没人提供培训的机会。同学和朋友一个个工作都找到了，就我搞不成低不就的，眼看带来的钱慢慢要见底了，这心里越来越急—难道这里还真没有我的用武之地了吗？</p>
						<p>3个月后，我终于找到了一个让自己暂时满意的工作，但远远不是自己的专业了。我这个人兴趣比较广泛，精力也充沛，大学里涉猎很多领域，想法也多，文字功底还可以。正好有一个广告公司招策划文案，我觉得自己能行，结果一试，公司面试者说我虽然没有做过，但是思路和功底还不错，再说毕业的学校名声不错，就留下我了---现在我还是很感激那位前辈，后面的工作也证明了他的眼光。月薪3500，还好，生活问题暂时解决了。</p>
						<p>很快我的生活进入了工作状态，我觉得很快乐。2个月过后，一件让我猝不及防发生了，没想到由此开始，我的生活发生了这么大的变化。</p>
						<p>2，邂逅</p>
						<p>上班后我对工作极其热忱，也非常努力，一两个月后我已经做过了3个Case，客户和老板还有上司都比较满意。当时我一则是刚从机关出来，一心想好好干个工作，二则是想报公司识人用人之恩，做事情时即不惜努力，又谦虚肯学，另外因为经过机关的历练，做人上路又大方，经常请同事喝酒吃饭，他们也愿意帮我，所以很快上手成为部门的骨干。到现在我还在劝年轻的朋友们，工作是应该用全身心来投入的，这项投入从理财的角度说对任何人来说都不会亏本。呵呵，不过，那段时间存款为0。</p>
						<p>有一天我去上班，那天早上下小雨，从住的地方要打车去公司那里，要车的人多，根本打不到车。刚刚轮到我就要上车的时候，一个女孩子从路边冲过来，头发已经淋得不像话了，拉开后门就要上车。我回头刚想出口请她下车，看看她淋得那样，再说让一个女孩子出去我还说真不出来，她也好像也实在没办法了，看着我脸红红的。我就对她笑了一下，退了出去。</p>
						<p>第二天早上，我们又在同一个地方见面了。那天是晴天，大家都在等公交车，她一见我就主动向我报以歉意的笑容，我指着快来的公交车笑着说："你不会把这辆车也抢走吧？"，她呵呵笑了，说："今天就让给你了！"。</p>
						<p>就这样，我们认识了。</p>
						<p>
								<br />3，热恋</p>
						<p>她叫芸，来自湖南。她不仅有湘妹子的美丽温婉，也有湖南女子的泼辣和善解人意。她也是刚到上海，在一家贸易公司工作。</p>
						<p>我们迅速的认识，相知，然后热恋。也许热恋还在相知之前。我至今也有点不明白，为什么会忽然爱的一塌糊涂。也许是刚到一个陌生的地方，刚刚脱离了生存的威胁，也许是我工作后一直嘻嘻哈哈惯了，忽然有个好女孩出现了，也有了真实的感情我就缴械了。</p>
						<p>我们因为住的近，下班后每天都在一起，芸说我第一次拥抱她时，她就离不开我了，她说我的体味让她无比迷恋。热恋时我感觉我的精力无穷，每天陪我的芸到夜里11点12点，灵感来了还去公司加班，那段时间工作效率也很高。朋友们都说我的眼睛熠熠闪光。我们一天不见就如隔三秋。看着她的眼睛我会忘了饥饿，有很多次我心里碰碰跳着回到住所时，忽然发现自己已经饿得受不了了，呵呵。</p>
						<p>有一次我去崇明跟项目，因为晚了船班次停了回不来，所以给她打电话说不回来了。我们一晚上竟然通了50多个电话，不是她打过来就是我打过去。第二天一早我一下船，居然在码头上发现了我的芸---要知道那里打车也要1个小时的路，她流着眼泪说一夜没睡，一早就来等我了。我们相拥而泣，幸福异常。</p>
						<p>很快我们双方都认为对方是自己未来家庭里的另一半。到年底的时候，芸说让我去她家见见她家人。我很紧张，但是很高兴，开始准备见面礼。呵呵，那时我们都爱昏了头，根本没有存钱的想法。好在我的薪水涨到了5500，她也有2500，我们还够花。</p>
						<p>然而没多久，一个消息把我的心情打入了十八层地狱。</p>
						<p>
								<br />4，彩礼</p>
						<p>到年底了，我的礼物也准备的差不多了，一共花了大概4000多。半年多来，我已经成为公司的干将，老板也比较看好我。因为我一直是西北人的性格，豪爽但不失明智，工作从不计较加班，补助什么的。年底老板还多发了不少，买好礼物手边已经有1万了,感觉自己有钱了,所以根本没想到钱的事。</p>
						<p>这时候她的一个表妹从她的老家来了，说是来看看。我想可能主要是她家里人让她来看看我这个未上门的女婿的。她早就给我说过，她家里她妈市老大，决定一切事宜。我们不敢怠慢，带她表妹在上海好好的玩来一遍。最后我感到她表妹对我还是比较满意，我的心也放下来了。</p>
						<p>到了临走的前几天，芸忽然告诉我说，这次上门可能比较正式，语言有些闪烁其词。我有点不明白，心里想可能她妈已经初步考察通过了吧。一天，我们三个人在的时候，她表妹开玩笑的样子对她说，姐，你这么好的条件，彩礼可不能少要啊！姨说了，前街的老李家的闺女都要了男方8万呢，我们决不能少于15万的。说着还看看我。</p>
						<p>天啊，我像被电打一下，呆住了。说实话，我从小在新疆长大，风气很开明的，结婚男方有送钱的一般不过4~5万了不起了，而且还是说明给孩子的。彩礼这个概念只有读小说时接触过，万万没有想到会有朝一日到自己头上。她家里人现在说出这个话，绝对是当真的，说话的方式都掌握的这么有技巧。我该怎么办？让她嫁改变做法想法？省省吧！凭什么？家里的底子我清楚，决不能向家里伸手。那该怎么办？我还是笑着看看芸和她表妹，芸有点紧张，我心里更不忍了。"呵呵！看来我要表现诚意了。"，我笑着不置可否的回答。</p>
						<p>我该怎么办？回去后我翻来覆去地想这个问题。</p>
						<p>
								<br />5，诺言<br />这是痛苦的3天，我几乎没怎么睡觉。芸也看出来了，她小心翼翼地不敢惹我。我心里很憋火：怎么弄得嫁女儿跟卖女儿一样？有时候想干脆吹了算了，可是一想到我们要分开，心里就像刀割一样，眼泪就不由自主的下来。家里一直是清贫的家庭，弟弟还在上大学，不可能向家里伸手的；自己的工资？天啊，我现在都觉得钱不够话，手边只有1万块钱，这次去还要准备出血，再说我就是攒钱，也要为我们结婚买房作准备啊，15万给了她家，我们将来怎么办？。。。</p>
						<p>这么多年来，我对自己的了解是，我喜欢出奇招。想了3天，我有了一个办法，心就定了。芸有时看着我，不知所措 — 她知道我的脾气，家境和经济状况，可是，她也知道她无力改变她妈的想法，而且关键的是，她还有一点想法是彩礼是应该给的。我告诉她，别担心，我有办法了。</p>
						<p>很快，到了她家了，见面，递上礼物，聊天。。。她母亲和蔼而精明，父亲稳重而慈爱。很快两天过去了，我们也该走了，这时该来的也该来了。最后的晚餐，她的母亲说话了："小D，你在我们这里已经2天了，我们对你还是比较满意的。你是个不错的孩子。如果没有意外，希望你们能今年（新的一年）把婚定了。你看什么时候把礼节办了？你们商量一下，也和你家里商量一下，好吗？对了，我们这边的风俗你可能还不清楚，也不知阿芸小月给你讲了没有。"</p>
						<p>我马上接住了话题，笑着说："谢谢阿姨，伯父，小月和我说了。"这时我看到阿芸紧张的脸都变了，看着我怕得要命。是啊，最后一段千万别搞砸了。我笑笑让她放心。</p>
						<p>"阿姨，伯父，你们的心情我我理解，养女儿不容易，再说只有一个女儿，我觉得15万如果比比投入，不算多，甚至还根本不够。这个钱我们家应该给。"</p>
						<p>"我想阿芸也把我家里的情况告诉二位老人了，我是这么想的，也不一定合适，您二位先听听。</p>
						<p>"15万应该给。但是我觉得既然我工作了，我自食其力了，而且是我娶阿芸，同时你们也觉得我合适，那么这个15万应该由我来给，而不是我家里来给。</p>
						<p>"你们和阿芸看中的人，不应该仅仅需要家里有15万，还要有能力，有能力给阿芸将来的生活带来幸福。我想，我有这个能力。我自己不仅要有15万，而且应该向你们证明，我有能力给阿芸幸福。</p>
						<p>"我只有一个要求，就是给我不长的时间，两年吧。我们还小（阿芸比我小2岁），晚一点结婚也没关系。两年后，我会拿出15万，而且会证明给你们看，我和阿芸有能力生活的幸福。"</p>
						<p>其实，当天晚上我的语言远远比我的文字精彩，因为有爱在心里，我打动了她家所有人，阿芸的脸也红扑扑的。我们走的时候，他家里人很开心，当然也许只是表面上是，但是至少他妈默认了我的要求。当然从此后，我感觉有个巨大的大山压在了我的心里，我的生活改变了。</p>
						<p>
								<br />6，开端<br />回到上海以后，我的心情没有低落，反而有种大战来临时的平静和激动。我心里暗暗下定决心，为了我的爱人，我的未来幸福生活，我要付出比别人几倍的努力，实现我的诺言。我全身心地渴望这样做，而且相信自己一定能够成功。</p>
						<p>芸反而很担心，她和我说要不我们搬到一起，生活上可以节省一些，她和我一起攒钱。我拒绝了她。虽然我们早就有了肌肤之亲，但是我不想让她家里人知道，这样对她不好。而且我也不愿让她一起攒钱，毕竟我说了，这是我的事。我知道一个女孩，生活、衣服、化妆品等等，每个月的花费怎么说也要2000块左右的。我说，芸这段时间我可能就不能给你买很多衣服和化妆品了，她郑重地点点头。我不知道，以后我是否会为这个决定而后悔。</p>
						<p>我的初步想法是这样的：因为我只工作了7个月，而我的薪水已经涨到了5500。如果依照这个速度，半年后我的薪岁至少应该到8000，一年后最不济也应该到10000左右。我可以什么都作，而且可以往管理方面发展，这样，我每月存下70%的工资，2年下来加上年终奖，也就差不多了。而且，那时候即便把15万都"上供"了，我的年收入也能够让我们生活的小康。</p>
						<p>现在回想我那时候想法，心里只有两个字：幼稚。事态的发展果然证实了那句话：计划在现实面前永远是无用的。<br /> <br />7，失败<br />很快，现实给了我重重一击。一个偶然的机会，我和大老板聊起来，他告诉我策划和创意人才可以很快赢得中等偏上的薪资，但是要达到5位数，只有2年的工作经历基本不可能。因为国内的商业条件还不成熟，客户的能力也有限。所有的公司愿意付出一些成本搞定客户 ，在策划和创意上达到80%的满意就可以了。而且，公司愿意把高薪给业务人员和管理人员，一个只有2年工作经历的人基本不具备它所需要的人脉资源、操作能力和管理能力。<br />我明白了老板的意思。我开始在市场上寻找其他的公司。但是现实很快让我失望，要在一年内获得万元以上的月薪根本是不可能的。好的公司有，但都说2到3年内有希望，如果做得好的话。老天，我的时间不够了！同时，公司知道了我在外面找工作的事情，老板们很不开心 ，因为平心而论 公司觉得已经待我不薄了。说实话，这条路成功的可能性很大，但是时间不够啊！</p>
						<p>怎么办？</p>
						<p>我决定辞职。</p>
						<p>8，艰辛</p>
						<p>既然已经证明此路不通，再留下去就是浪费时间。我的时间不多了。而且我认为自己如果辞职，就有的是大块的时间，能够接触更多更深的社会，机会也相应的多了。阿芸不同意，她说这样太不稳定了。我没法说服她，她也没办法说服我。这件事我还是做了，我知道，只能破釜沉舟了。</p>
						<p>临走时和老板深谈了一次，请他原谅。也把我的处境部分告诉了他。我们谈得很好。老板很惋惜，让我以后有可能还回来工作，我也很依依不舍，但是我已经没有退路了。</p>
						<p>我开始了在上海滩到处漫游的经历，骑着一辆破自行车到处在上海转，到处找有限的熟人，问有没有项目做。我身边有1万2千多块钱，觉得还可以支撑半年吧。我想，这半年里如果有策划项目做，我就辛苦点，把所有的事情都自己做了，应该可以挣个2到3万，多做几个项目就比打工好了。呵呵，如果朋友们谁有我那时一样的想法，今天我一定劝你千万别！事后想，我太自信了太着急了，真是应该边工作边找机会，时机成熟再干的，否则下海99%是被淹死。我就这样风里来雨里去，跑了2个月，一个单子也没有跑到，加上有一次丢了包，损失了1000多块钱和手机。住宿、吃饭、交通花了3500块钱，身边只剩7000多块钱了。可是一点没有转机的迹象出现。</p>
						<p>9，机遇<br />就在这时候，一个令人不敢相信的、非常好的机会出现了。我以前的一个客户找到我，说是他的一个朋友在上海嘉定那边的一个镇里做镇长，他们镇上3个月后要办一个"水乡情思"的活动，主要是吸引港台和外籍人士的资金投资。他们要我构思起草一个大型活动的策划书，价格是4万元。这个客户说以前在我们公司和我合作过，觉得我有这个能力，而且拿到公司去做策划，价格一般要到8万以上。我们合作空间更大，而且如果策划书做的好的话，活动组织和制作我们还有机会。我很开心，明白他是想自己也赚一些，立刻给了他2000元的好处费。不知道这个习惯有没有影响我，直到现在我都认为机会来了一定要投入，而不是大多数人认为的不见兔子不撒鹰。</p>
						<p>我废寝忘食地工作了20多天，每天夜里干到2点，稿子改了4次。然后又自己贴了400多块钱制作了3本样本。交给那朋友的时候，他非常赞赏，连声说做的太好了，看来后面的制作也没问题了，一周之内我就等着拿钱吧。我也心里感叹投入没有白投，连忙把这个好消息告诉了芸，她也非常开心。毕竟这是我的第一笔收入啊！而且金额还算不少。 </p>
						<p>
								<br />10，被骗</p>
						<p>我万万没有想到，这次看起来不错的机会竟然实际上是碰上了一个骗子。这个客户拿到了我的方案以后，竟然人间蒸发了！我苦苦等了一周以后，这家伙死活不再和我联系了。我打电话，手机已经停机，跑到他原来公司去找他，公司的人说他早就不做了，现在在和一个人合作开公司。我又跑到嘉定的那个镇上去找我们以前一起见过的他的镇长朋友，镇长说这个项目早就签约了，他和我那个客户也不是朋友，只是签约公司说策划书部分包给他，他又找到了我，说我是他的助手。现在策划书已经通过，钱都已经付了。我马上又找到了那家公司，公司说我那个客户不是他们公司的人，只是他让公司把策划书部分包给他，钱公司和他刚结清了。知道我的情况后，他们表示同情，但没办法：现在他们也找不到人，钱也结清了。</p>
						<p>这个打击对那时的我是致命的，让我的处境雪上加霜。我已经花了大量的精力不说，原来剩下的7000多块钱已经被我花去了大半，只剩3000多了。更可怕的是我的时间又用去了一个多月。</p>
						<p>这是后话：那个客户我这几年就再也没有见过。后来听说他过得很不好，很多人都在找他，他又让合作伙伴坑了一次，基本上就再也没有听说在这个行业里做过什么了。</p>
						<p>
								<br />11，灰心 <br />万分沮丧的我把情况告诉了芸，告诉她的时候我分明听到了一个美丽的泡沫在她心里破碎的声音。她表面上没有说什么，但我知道她失望极了。我们相拥无言，我只能从她这里得到一丝温暖和安慰。她说，你别急，没关系，我们从头再来。可是，我的爱人，你知道吗，这个打击甚至让我回头审视自己，怀疑自己：我这样的一个北方人，是不是适合在上海打拼？</p>
						<p>尽管万分失落和失望，可我不能让我的女孩对我失望。第二天我强打精神对阿芸说我要重新开始。我考虑了一夜，因为我已经没钱了，不能再租原来的房子了，我必须去找一个民房住，每个月可以省7 ~ 800元左右。但是这样就不能和芸象以前那样离的那么近了。我说我不能停下来，时间不多了。芸哭着抱着我说，我一定要多来看她，她会很想我，我有经济困难一定要来找她。我笑着说，你有经济困难也要来找我啊。</p>
						<p>朋友们，尽管时间已经过去了那么久，可是今天我回忆到这里的时候仍然泪流不止。那时候我已经处于最低谷，生存也成问题，可是我仍然愿意回忆那时的事情。我怎么可能想到，命运老人会让以后的我和她发生那么大的变化？</p>
						<p>12，初醒<br />我搬到的一个民居是个私房，就是农民自己盖的房子，房子里面夏天热冬天冷，而且只有10个平房大小。我已经很满足了，这里每个月租金才200元，比以前我已经省了800块钱了。</p>
						<p>搬过来以后，我有很长一段日子不知自己干什么好。我想这是载过跟头的人的通病吧，相信有过类似经历的朋友会有同感。可是不做事情我心里又焦急万分。这种矛盾的感觉真是让我每天心里都不好受。</p>
						<p>转眼一个月就要过去了，这个月里我基本上是馒头就咸菜，肚子里油水实在缺的厉害。我决定去买点熟肉解解馋。我这个民房周围有几个新改成的小区，因为离市区比较远，基本上是一些市内动迁户迁到这里来的，真的购买这里房子的人也都没什么钱，但是这样的人在上海很多，小区外人气还是不错的。这里不像高价房，高价房是开盘很久了还没见几个人烟。小区之间有条街，人很多但大都是些老人孩子在转悠。熟肉店生意好象不是很好，我要了一些肉又买了一瓶啤酒，在旁边小店的简易桌上坐下来吃。</p>
						<p>多年以后我回想那个时刻，还是认为那是上帝给处于绝境的我的一个机遇。就在那时，忽然有人和熟食店老板说话，在说老板，你这生意不行啊！是啊，那老板说，我下礼拜农忙，准备回家了，不做了。那人说，那你这店怎么办？那老板说，转了呗，这半年没赚什么钱，还不如做点别的。忽然我有一种苏醒的感觉，我到处找钱赚，可是好高骛远，忽视了这身边的机会，难道自己一直没看见？我马上站起来，让老板再给我一点牛肉，然后漫不经心地问他转让店面的情况。</p>
						<p>不过十分钟，我就清楚了：这个店也就10个平方左右，月租金1200，租金他多付了两个月。转让费他要求不高，不亏就行，带一点简单的设施，2万块钱吧。我说我想接手，但是价格太高，他降到了1万8。我说1万5我今天就要，他回去和他老婆商量了以下，同意了。我立刻回房拿了我仅剩的3000块钱作为订金付给他，然后当晚立下转让书，当然他同意我7天内把余款付清。</p>
						<p>13，努力<br />我找到以前公司的老板，请他借给我钱。我还带去了我做的那份策划书，说我送给公司的。老板也多少听说了我的事情，他详细地了解了我的境况，二话没说借给了我1万5千块钱。我笑着说："老板，我把身份证押在你这里吧？"，老板也笑着说："你要不要我的身份证，1万5我押在你那里？"其实到现在我都一直敬佩我的老板。他的事业现在也做得很好，家资3000多万了。</p>
						<p>
								<br />拿到店面前的3天我一直在苦苦思考，怎么能让我的店面生意大为改观呢？首先，我回忆到以前的鸡粥店，觉得上海人爱吃鸡，特别是白斩鸡，还有烤鸭，决定经营品种适当变化；另外，饮食业最重要的是卫生（卫生许可证一年一办，已经有了），我决定彻底打扫店面一天，店面重新贴开业标志，另外买了一个二手的消毒柜，特意摆到台面上让客户看到消毒设施的过程；然后，我找了一个上海老师傅来指导制作工艺（退休了返聘，很便宜的），再找了2个勤快的四川妹帮忙，允诺给他们业绩5%的提成，但是不行我就换人；等等大概有20多条措施吧，我当时可是写满了2页纸的，全部做完已经过了近10天了。最后，我买了一些鞭炮，噼哩啪啦一放，人气立刻被我吸引过来了。呵呵，当天忙到夜里11点，一盘点营业额居然有500多！</p>
						<p>14，曙光<br />做过生意的朋友都知道，开业的当天生意好不见得以后生意一直会好。因为刚开始客户是好奇，试一试，一旦没有什么特别吸引之处，他们就会立刻忘了你。而你要再吸引他们的注意力就困难得多了。</p>
						<p>我明白这个道理，所以第二天开始就在店面前不停的拉人聊天，问味道怎么样，然后不由分说要送他们一些熟食。上海人内外分的很清楚，他们决不会白要别人的东西，绝大多数都付点钱，当然他们也不会白给别人东西。当然我明白，生意的关键是我的货品要合客户的口味。慢慢的我的小店人气就有了。我还请人在几个小区里张贴了我们店的广告，也请人故意拎我们的烤鸭在几个小区人多的地方走动，相互之间含喧，巧妙吸引人们注意。通过很多这样的方法，一个月后我的店每天的营业额可以达到800元左右，而且还在不断上升中。呵呵，我以前的策划功底全部用在这上面了。</p>
						<p>我这样起早贪黑的忙碌，每天大概干14、5个小时吧，完全把心思扑在了店面上。作了第一个月的生意后，我盘点了一下，我一共赚了9000元钱；第二个月我赚了12000。把欠的债还掉后，我又没钱了。但是我感到，我生命中久违的曙光已经来了。说实话，这种感觉真的很美妙。</p>
						<p>15，做梦<br />我就这样经营着自己的小店，时间又过了3~4个月。其间我忙得每天只睡5、6个小时，一躺下就昏迷不醒的样子。我和阿芸通过几次电话，她也忙，因为她升职为资深业务了。我们见过几次面，她都让我好好休息一下，我笑着说，把你娶回来再说吧。她说你靠那个门脸赚到钱了？我笑笑，决定几个月后给她一个惊喜。</p>
						<p>4个月后，我已经攒了5万块钱，可是也快到年底了。算算我的时间只剩13个月多一点了。如果按照现在这个模式发展下去，我完成目标15万的可能性是稳稳的。我每个月只要保持现在的状态，那么一年以后我应该用18~20万。钱是够了，还可以办个像样的婚礼，不过买房子是暂时不用想的。呵呵，看到这里，不知道又有多少朋友在笑我 — 楼主的幼稚病又犯了！是啊，如果没有房东的收租事件，我想我会把这样的梦做下去吧。</p>
						<p>房东来收过几个月租后，就到年底了。有一天房东忽然出现说是要签明年的租房合同，但是价格贵了一倍。气得我差点翻脸，这分明是看我生意好了眼红嘛！可是我知道人在屋檐下，不能不低头啊。再说我现在可是一点问题也不能出。我和他好说歹说，又送给他了一些熟食，房东还是加了我1000块钱。</p>
						<p>这件事让我意识到危机已经显现。生意做得好了以后，第一房东的房租会涨价，不可能再跌价，各种费用也会涨；第二，很快竞争者就会出现，出现以后和我的小店是同样规模，势必会分流客户。所以这种赚钱的状态是不会持久的。如果我不动作，最后的结果我想也想得出：小店几个月后就回到维持生计的地步。那么我该怎么办呢？我一夜没睡，苦思对策。</p>
						<p>第二天一早，我下定了决心，决定孤注一掷，冒一把大险！</p>
						<p>16，冒险</p>
						<p>我的计划是这样的：第一步，在附近的小区再开几家这样的熟食店。地段只要和我现在的店面地段差不多就行了，但是不能太近了，然后用一样的装修、一样的名字、一样的策划手段，建立起小区居民心目中品牌形象，这样进货价格会便宜很多，还可以逼迫后来者提高投入。这个计划实施的越快越好。第二步，我觉得现在这个商铺的价格不高，2000多交租不如我把它买下来。上海的朋友都知道，2000年底上海郊区的房子价格只有2000多，商铺也只有3000多。这一步必须稳步实施，一个一个来。但是这样我就是必须投入我现在所有的5万块钱，如果一旦失败，我的时间、金钱投入可能会让我的目标彻底无法实现。但是我又想，我不去做，就把希望寄托在别人别来抢生意上，我去做了，希望在我自己身上。相比一下，我愿意把希望寄托在自己身上。</p>
						<p>但是我以前所想的给我的芸一个惊喜的计划只能延时了。我心里对自己说，为了她，拿出你所有的劲吧！那是无比艰辛的一个月。我不仅要照顾一号店的生意，又要为二号店、三号店选址、选人、买设施、店面布置等等。后来我提高了一个一号店店员的提成比例，封他为店长，告诉他1个月后店里的营业额如果下降5%以上，立刻换店长。这样我就全身心投入到新店的开张。1个月过后，我的二号店、三号店相继开张，我还是无法清闲，又开始了以前那样的策划造势，而且开始了四号店的准备工作。</p>
						<p>后面的一个月，我一号店的盈利状况还是不错，达到了12000元，二号店5000元，3号店最好，居然有10000！要知道这是头一个月，人员还不熟呢！我发现原因是一个女孩店员做生意很有天赋，也会招睐客户，我二话没说给她工资翻倍，直接提升为店长。</p>
						<p>年底如期到来，我和芸只在一起度过了半天，就不得不忙着自己的店面了。芸要回家去，我不能走，目标没有完成我怎么能见她家人呢？不过我和她妈通了一个电话，她妈笑着说："小D，我们知道你是个好样的孩子，我们都盼着你把我家芸芸早点娶走呢！"我知道这话里的意思，也笑着回答说："我会的，谢谢阿姨和伯父的信任。"</p>
						<p>年底年头的2个月，因为过年，节日也多，我的生意好的一塌糊涂。四号店也赶在春节前开了。这两个月每个店平均一月能赚15000，2个月后我身边的现金达到了12万。元旦前还有一件事，原来的老板给我打电话说，他公司还有一个转入户口的名额，问我要不要，我说要。他说我什么都不用管了，把资料给他就行了。为了好好感谢他，过年时我去他家给他的孩子送了一个5000块的红包。年后不久我的户口办下来了。我开始逐步的和各个东房谈要购买铺面，如果他们不卖，我就找别的房东谈，那是很多房子是物业的，比较好拿。而且那时候房价低，再说我找房子前就打的有伏笔，另外我价格给的稍高一些，前面3家都谈的很顺利，单价大概在3700一个平方吧，一共13万，我全部给的是现金。第四家以一共要5万（生意好啊，房东要挟我），我没钱了，但是抵押了前面的一家店作为3万先签了意向书，等到一个月后，资金回笼了，把钱凑齐了把店拿了下来。</p>
						<p>这时候已经是3月底了，我还剩8个月。生意好象在稳步进行，目标好像越来越近。可是我没想到，一个足以摧毁我的重创也越来越近了。直到今天我回想到这个让我记忆深刻的时间段，还觉得眼眶里泪水未干。</p>
						<p>17，重创</p>
						<p>时间又过了3个半月，马上要到7月10日了，我之所以记得这个日子，因为这是芸的生日。我决定在这个日子之前攒足15万，并把这个消息作为生日礼物送给她。想到她得到这个礼物时候的开心，我的心里别提多激动了。这几个月店面也争气，每个店都能够达到10000多的利润，这是因为我店多了，进货成本低了，而且房租也不用交了，还有一个最主要的原因就是我用了一个很好的店长 — 小成。</p>
						<p>小成就是我前面破格提拔为店长的那个女孩子。这女孩是从浙江来的，只有19岁，人长的清秀漂亮（因为要招徕客户，这是一个比较重要的因素，招人的时候我就特别注意要找看着舒服的女孩）。因为一般的外来妹大多不是浙江来的，所以我特别留意她。没想到这个女孩在做生意方面真的很有天赋，她一直是很开心的样子，从没见过她烦过，会说话，人很甜，客户缘很好。而且她很有脑子，开业没几天就把所有的常客的名字记熟了（我估计她是问周围的店主和客户的），还建议我，天气热了，店面里配点素菜，啤酒，买点简易桌椅，晚上让客户边吃边纳凉。她还把周围的几家饭店的电话弄到了，把饭店的生意也拉了进来。后来我们熟食店里的生意饭店进货居然占了30%！</p>
						<p>不过她也有一点不好，就是好像身体太单薄，力气活干不了多久就累得脸发白、出虚汗。小店生意好的时候，这也挺影响的。我考虑了几天，决定扬其长，避其短，在店里又招了一个身强力壮的小伙子给她打下手，告诉她只管招徕客户，管理帐务。</p>
						<p>  这时候我的一个朋友打电话给我。原来他不知道从什么地方得知我开了几个店，做得还行，而他正在做房产销售，代理一个别墅的盘子，非要我去看看。上海的朋友都知道，2001年的时候上海的房产还远远不热，房产销售尤其是高价房的销售很难做。他代理的那个别墅房型有180多个平方，周边的配套还不完善，再说总价要80万朝上，我不想买，就告诉他没那么多钱。他说，你来看看吧，看了肯定喜欢，再说钱的事情好办，贷款就行了。我说那还要首付呢，我首付也没有。他说没关系，他可以在合同上做点手脚，让我零首付，全部贷款。我没办法只好去看看，没想到看了以后特别喜欢别墅下面的花园，因为我记得芸曾经告诉我说，她的梦想就是住在花园的上面，每天早上打开窗户就能闻到花的清香。朋友看我有意，就拼命鼓动我说，买了这个房子这个优惠，那个免费的，每月只要付6000多就可以了。我还是有点犹豫，说我不想每月跑银行。他说，我帮你办，每月自动划款，不用你操心的。我没什么再挑的了，想想就定了一套。不过后来知道，这小子还是打了埋伏，有些言过其实：窗户就不是他说的双层的，车位也不是免费的，呵呵。</p>
						<p>7月9日，我拿着那份15万元的存折卡，兴冲冲地拿着一束花，拎着一品瓶红酒（蛋糕明天叫人送来）赶往芸的住处。之前，我已经给她妈打了一个电话，向她父母亲问好。同时告诉他们，我已经提前5个月实现了诺言，很快就会娶她家女儿了。我决定先给芸一个惊喜，然后今晚就住在她那里。我特意赶在她下班前一点赶到，准备突然出现，吓得她快乐的大叫。</p>
						<p>可是让我始料不及的事情出现了，芸下车时不是一个人，而是和一个男孩一起。他们手拉着手，好像很亲昵。我一下傻了，不知道怎么办好，他们一起进了小区，我傻乎乎地跟在后面。在光线阴暗处，那男的还一把搂住芸亲了一下。我的脑袋轰的一下，再也受不了了。我大叫着芸的名字，冲上前去一把抓住芸，然后就要打那个男的。芸吓了一跳，拼命地拉住我，对那个男人说快走，你先走，我跟他解释。男的走了，芸还是拉住我不放，我叫到解释什么？解释什么？一边眼泪就快下来了。芸看着我，很冷静，冷静的我们好像不认识。她对我说对不起，早该告诉我。但是我今天太不冷静，她希望我先冷静下来，现在的气氛我们没法谈。我没办法冷静，说不行，今天你就必须给我一个说法。她被我纠缠的没办法了，对我说，D，一直以来，我以为你的素质很高，你今天这样会让我很失望。我停了下来，看着她，眼泪慢慢地流下来，最后对她说，好，我走，明天来再谈。出了小区，发现花和红酒居然还在手中，一把把他们扔进了垃圾箱。</p>
						<p>那夜我一夜无眠，盯着外面发呆，怎么也想不明白事情怎么会到这种地步。第二天一早我在芸的楼下等着。芸下来说我们找个地方吧。我们到了一家茶室，我呆呆坐下，等她解释。那天她说了很多，我都有些记不清了。她说，其实从我搬走我们就很少在一起了。她知道我很努力，很辛苦，但是经历那么多波折，真的很怀疑我是不是能够实现15万的诺言。她心里开始很怕，但是又没机会和我说。我的压力又不和她分担。在上海这么长时间，她和我一样做得很辛苦也都没有归宿感，觉得很累。这时候她的上司，就是那个男孩出现在她身边，男孩是上海人，比她大4岁，在公司职位不错，家里条件也好。芸说和他在一起，她会觉得很安心，很安定，很有安全感，不像和我在一起，虽然感情曾经很热烈，但是总是不知道我们的将来在那里。她说对不起，真的对不起。我激动的浑身乱颤，说不出话来。好容易稍微平静一些，我告诉她说，我现在有15万了，你还会爱我吗？她说，对不起，我觉得现在很好，我不能再对不起他了，我们不会再在一起了，希望你将来幸福。出门的时候我发现了那个男孩，心里又一阵刺痛。约在这里，一定是他们商量的结果。<br /> </p>
						<p>18，怀疑<br />这真是一个巨大的讽刺。一直以来，我以她为努力奋斗的动力，可是等我奋斗到了目标跟前，却发现目标忽然消失了。我记得那时候，我开始失眠，希望自己赶快入睡，然后梦见芸。可是我一次也没有梦见她，倒是我清醒的时候一刻也没有停止想她。我经常觉得心里刺痛，头皮发麻。一直以来，我那么小心翼翼地把她放到我心里的一个最温暖、最柔软的地方，没想到最痛苦的打击却由这里产生。</p>
						<p>有一个朋友曾经回贴问我，怎样才能获得不爱你的女孩的爱，我没有回答。不是我不愿回答，而是我不知道怎样回答。我真的不是这方面的专家，我也曾痛苦无比，希望能够改变我爱的女孩的心。可是我没有什么办法，只有自己默默地退回，独自一人舔着自己的伤口。</p>
						<p>那段时间我对自己过去的所作所为产生了怀疑，我这么做到底有什么意义？如果我还在公司工作，每天还有时间，情况就不会这样。如果我不搬家，事情也不会这样。如果我不开店，就有时间陪她，情况也不会这样。就是开店了，如果我不开分店，也有时间去看她，应该也能阻止她情变。每天我这样乱七八糟的想法充斥了我的脑海，让我对生意根本提不起兴趣。</p>
						<p>店里的员工都看出来了，他们小心翼翼的不敢惹我。几个店长都很称职，生怕店里的事情会引得我大发雷霆。尤其是小成，她主动找到我说她来每天到个家店里盘点，让我忙我自己的事。我很感激她，也相信她的能力，就告诉几个店以后由她来查店。我知道自己这个状态如果硬让我去，非出事不可。小成很有手段，也有能力，查店每天要多做2个小时，她很快让其他人服服帖帖。还好，有小成和他们的帮助，我的生意没有什么影响。</p>
						<p>但是我自己知道，我已经迷失了前进的方向。我不知道怎么再找到这个方向。</p>
						<p>19，迷失</p>
						<p>有人说工作累的时候，家里压力大的时候很辛苦，我却不是这样认为。我觉得一个人迷失方向的时候最痛苦，因为你不知道自己应该做什么，这种状态每天无时无刻不深刻地提醒你不过是一具行尸走肉罢了。那个时候就是我迷失方向的时候。我就像一个被抽去发条的时钟钟摆，每天不过是由惯性推动我在摆动。我不知道什么时候会停摆。也许在我的内心深处还在暗暗期盼那停摆的时刻。</p>
						<p>芸的妈妈给我打了一个电话，接到电话知道是她，我心里真的不知道是什么滋味。她妈对我说，孩子，阿姨知道你很难过。你们年轻人的事真不知怎么搞的。但是阿姨告诉你，你是个好孩子。你的前途还很远大。阿芸不能和你在一起，是她没福。好好的，我们全家都祝福你。听了这话，我的眼泪又留下来了。以前觉得她是那么固执和势力，今天怎么觉得她的话那么温暖。我终于能够真正站到一个父母的角度上来看彩礼这件事，是啊，那是要把自己女儿未来幸福生活尽量多地抓到手里的感觉。</p>
						<p>在这里我要感谢我的一位大学同学枫，如果不是他凑巧来到上海，要我陪同的话，我不知道我这种状态要持续多久。枫来上海玩，指定我陪，而且说陪得不好当即给所有哥们打电话说上海没我。我强打精神，枫还是有所察觉。枫一见我就说，你小子怎么减肥减的那么明显，不行不行，我们不能一起照相，否则班花见了照片，我一点想头都没了。他就是这样，那几天逗得我开心了一些。要走的时候，枫说，说说吧，怎么了。我这才知道，他早看出我有事，所以一直在让我开心。从芸变心以来，我从没有向人倾诉过。枫听过了之后，很久没有说话。后来一开口就是一句："好！这是好事！" 我听的愣了。</p>
						<p>枫接着解释说，我和芸现在分开始好事。因为就是现在不分开，我们早晚要分开。因为我们不是一路人。芸的内心深处时那种安分守己的人，经不起动荡，分开的时间主要视我波动的强度而定；而我是那种不安分守己的人，越是不利、越是艰难，越能激发我的能力。我适宜在变数中求生存，求发展。而且我不是很在乎物质，所以要的感情是非常纯粹的，女孩子大多到了要结婚的关键时刻，生活现实和抚育后代的本能让她们不得不物质起来。这不能说不对。这也是为什么当初芸自己也不反对彩礼的原因。他说，我这样的人，只有物质生活到了一个水准后，交往的女孩子才会有安稳的感觉。现在还不行。但是我应该感谢芸，她激发了我，她放了我是我的幸运，否则我们在一起，芸一定会成为我的桎梏。他还说，你的奋斗动力就是她？那你的家人，朋友呢？我们呢？你以前的老板呢？你的员工呢？我们还一直以为你能成大气，为了我们这份信任，你也不应该放弃。而且，说实话，你的这点家业还很小很小，一不小心，很快就败了。</p>
						<p>他还告诉我要留意小成，这小姑娘太聪明。我就是对女的太迟钝了才栽的跟头。以后绝对不能让她独掌财务大权，我一定要控制住她。最后，他拍拍我说，兄弟，醒过来吧，外面的世界很残酷，也很精彩，但是绝对不是为这个样子的你准备的。</p>
						<p>枫，今天的你也在看这份贴子吗？如果是的话，我想对你说：哥们，真的谢谢你！</p>
						<p>20，心意<br />因为那一场直抒胸臆的倾诉和枫的精到劝慰，我终于慢慢开始摆脱失恋的阴影。我特地给家里打了电话，给弟弟也打了电话，同时也和同学朋友纷纷联系，又去拜访了以前的老板，他们都为我在上海的奋斗状态和所得高兴。我之所以这样做是想提醒自己，我的世界还在，我的生活还在，我要主动地让他们把我拉回到我的世界里。他们对我的爱也会成为我的动力，这是更绵绵不绝，更持久的动力。</p>
						<p>同时我也听取了枫的建议，重新收回了店面的管理权限和财务权限。我把小成和另外一个店长互换了位置，然后仔细的查询了最近的账目，还悄悄地私下和其他人谈了谈，侧面问了问他们对小成的看法，大家都没说什么有价值的话，除了一号店店长，他的资格最老。一号店长说小成太跋扈，太不尊重人，什么事情都自己定，也不和老板商量，更别说其他人了。每天的财务帐、现金全是她管，根本不让别人插手，也不知道她是怎么想的。因为我暂时没有查到什么小成的把柄，所以只能安慰一下他，也没有做什么动作。</p>
						<p>这时候4号店的小徐（他就是我招的为小成打下手的伙计）找到我，要求要换地方，他要跟小成到一个店里去，否则就辞职。我一开始很奇怪，后来恍然大悟，明白了小徐的心意：原来小徐已经喜欢上了小成。我同意了小徐的要求，同时更为警惕，因为公司里有一对的话，容易形成小集体，而且他们容易一起跳槽，成为我新的竞争对手。我不得不暗自多留心小成和小徐。</p>
						<p> </p>
						<p>原贴地址：<a href="http://club.money.business.sohu.com/read-licai-449805-0-1018.html">http://club.money.business.sohu.com/read-licai-449805-0-1018.html</a><br /> <br /> <br /> </p>
						<p>　主题：Re:上海，我的奋斗岁月  <br />初春耕夫 [becomingreal@sohu] 发表于02-18 14:05 [回复] [发留言] [送礼物]  <br /> <br /> <br /> <br /> <br />21，真爱<br />我的心意逐渐回到了生意上。不得不承认，小成有一套。她总结出一些管理规范和待客方法很有用处。她的做法比我原来的做法更细，我比较倾向于策划一些活动和办法，短期效应比较明显，但长期的发展还是需要细化的管理。生意还是缓步发展，我们基本上每半年利润提升20%，这一方面因为管理的细化，人员的熟悉；另一方面还是得益于这里的人气渐渐旺起来了。这样过了年，到了2002年4月份，我的手头已经有了超过50万的资金。经过和小成交谈，了解了她的很多想法，我觉得我暂时还时离不开小成。这段时间我发现小成对小徐也是淡淡的，他们的关系好像并没有变得密切起来。</p>
						<p>因为对小成的留心，我发现了小成身上的越来越多的细节：她一个人住，爱干净，爱笑，爱看书，很怕冷，尤其害怕感冒，不喜欢猫狗等等。因为生意的缘故，我和小成的交流越来越多，也就越来越了解她的聪明和能干。有时候我想，这么聪明的女孩因为家庭的原因不能上大学真是可惜了！又转念一想，就是上了大学又怎么样呢？大学生我自己不就是吗？我见得还少吗？原来戒备心理也可以让人如此留意一个人。</p>
						<p>有一天我去查店，发现小成没来上班。我们一般上班很晚，下班也相应晚一些，因为生意一般是在下半天。写到这里，我想到有的朋友怀疑一个10几平方的熟食店一个月的利润怎么会有10000块钱，我想说，生意人人做，关键看你怎么做。我们的每个店周围都有1000户左右的小区，很多是租户，他们不愿开伙。我们每天晚饭时段一般要做50笔生意，每笔十几元，这样营业额就有700元左右。食品行业一般利润率一半左右。节假日更好做，还不算饭店的生意。当然，我们不用交房租。而且现在的生意也不如那时了，这是后话。言归正传，我发现小成没来，就问了一下，有员工说她不舒服，今天不来了。小成没来，小徐也没来，我想想反正上午每什么事，应该去看看小成是不是病得很严重，就向他们问了地址，出来买了点水果，打车往小成住的地方赶去。</p>
						<p>小成住的地方我没有来过，到了小区门口我才发现是个比较高档的小区，这里一室一厅的房子一个月要1000块吧，我边走边想，一边又很不解为什么小成会把月收入的一小半用来租房，尤其是想想自己才刚从私房里搬出不久，现在的房子也不过是1000元左右。正在胡思乱想，忽然发现小徐从一个门洞里出来，急匆匆的样子，我连忙回避在一旁，看着小徐跨上自行车往店面的方向赶去。</p>
						<p>忽然在这里看见了小徐的片刻，我的心里产生了一种很奇怪的滋味。一种很不舒服、心头微酸--好像是吃醋的感觉，同时觉得一阵懊恼。这种感觉没有经过理智，完全好像是自然而然产生的，只是片刻之后，我忽然一阵震惊---难道我如此在意小成？难道我不知不觉已经爱上了她？这是一个连我自己都吃惊的发现，因为失恋的很久以来，我一直觉得自己好像已经不会爱、不能爱了，有时候我会接触到一些女孩，可是我根本无法提起感觉。没想到，我爱的感觉会在小成这里复苏？小成可是我一直提防的人啊！</p>
						<p>刹那之间，我的脑海里风起云涌，万种思路好像被同时激活：是我失去了芸，把小成作为一个感情的替代者了吗？不是，和小成在一起的感觉完全和芸不同，我们的交流更平和，因而更交融，我也感到更轻松。和芸在一起完全是被激情和冲动淹没，我们心灵层面的交流显得更少---如果更多的话，也不致有那样的结果；是我因为她病了而怜惜她吗？不，怜悯和爱我是分得清的，现在我的心里分明有一种心痛而且甜蜜的感觉；难道是见到小徐引起的男人本能的异性排他性不满？也不是，因为我清清楚楚的知道，我决不是一个把身边所有女孩都看成情人的情圣.....你呀你呀，你经历过感情的痛苦，所以你一定要分辨清楚，这是你的真感情，你的真爱吗？你不要糊里糊涂的再带给自己或别人痛苦了！</p>
						<p>可是我越是想，小成的笑脸、话语和我们交流的场景等等印象就越清晰，我就越觉得小成是真正适合我的女孩。她的开朗，她的平和，她的聪明能干，她的善解人意，还有她为我的事业作的努力和成效，当然还有她可爱的、惹人怜惜的样子---这些我以前都没有明显地感觉到，可是今天我感觉对我来说就象空气一样不可缺少！</p>
						<p>爱情的幼苗一旦破土，成长的速度真是惊人！在我伫立楼下不到30分钟的之后，我已经感到我的心胸开始无法承受它的奔涌，必须要向她倾诉才能缓解。可是我不是一个语言表达爱意的能手，尤其是现在这个令人激动的时刻，我觉得我现在激动的别说讲话了，连一口气都不能顺畅的呼出。我忐忑不安，但又决定立刻向她说出来 — 就是现在！</p>
						<p>敲开她的房门的时候，她的脸色有些苍白，可是她的目光那么平静，柔和，一点也不吃惊。我反而更加慌张，不管了，我必须要说 --- "我，我......你，你，你病了......我发现我离不开你！我发现我爱你！小成，你听我说，我爱你。我喜欢你。我要给你说，我离不开你了!" </p>
						<p>那天我说了很多吧？不知道，记不得了。可是结果我却记得，小成拒绝了我。</p>
						<p>（周一请看：22，原因</p>
						<p>各位，21这一节和理财关系不大，可是对我的人生却关系重大，所以我把它写的很细。希望你们喜欢。）</p>
						<p>22，原因<br />在感情方面，我是一个脸皮很薄的人。小成不声不响地听完我语无伦次的表白后，低着头平静地摇头表示不能接受，我就不知道该怎么做了。为什么？因为你和小徐？我问。她摇摇头，没有说话，但我看到她有眼泪流下。呆了一会，我不知该怎么做，一直惶惶惑惑地。最后，我还是离开了她的住处。再见到小成，是2天后了。她来上班，我早早等在店里，远处一见她的身影，心里就怦怦跳个不停，可是见了她的面又不知该怎么说话。她看见我，好像脸红了一下，就再没和我说话。说实话，我觉得她是喜欢我的，尤其是回忆到她以前帮我时那种自告奋勇和尽心尽力，我越发这样认为，但是她为什么拒绝我呢？我想不明白，哎，真不理解女孩子的心思啊。她工作起来还是那样井井有条效率很高。我不愿打扰，就去其他店了。</p>
						<p>到了4，5月份，天气有点热了，因为刚过了年，生意是属于淡季。我们希望再热一些，这样人们愿意出来吃饭；不过因为天热，食品行业风险很大，绝对不能出现食品变质，否则对生意的伤害是很大的。我们这时候一般加紧和饭店联系，因为饭店要量大，而且可以预知，这样风险小。因为这方面一直是小成负责，所以现在淡季反而她会比较忙，我也比较放心。没想到，不久小成忽然出了事情 --- 她累得晕倒在了店里。</p>
						<p>当时我接到电话飞速赶到店里，小徐已经把小成扶在椅子上坐着，根据小成的指点正在给她味药。小成坚决不同意去医院，小徐他们也没办法，看见我来了，都像看到救星一样。我不由分说，对小徐说：你出去打车，我们两把她送医院！小徐一出门，我一把抱起小成就走。小成在边挣边说不去，我根本不停。我知道，不让小徐他会和我急的，但是我也要和小徐公平竞争。很快送到了市八院 --- 离我们那儿打车要30分钟吧，我们等在旁边，护士就要开始测血压、测血、停诊了，对站在旁边谁都不肯离去的我和小徐说："女孩子脱衣服你们小伙子也在旁边吗？"没办法，我们只好出去。</p>
						<p>我们等在外面，小徐一直不和我说话。大概他感觉出我对小成的意思，他有些戒备吧。大概过了几十分钟吧，医生出来小声说："成**，同事还是家属？"我们都站了起来，医生责备的对我们说，小成有先天性心脏病，根本不能工作劳累、激动，更不能感冒。她的心脏已经比普通人大了，因为小时候没有手术治疗，现在手术的可能性很小，只能静养。</p>
						<p>这时候我的脑海里如电光火石一般，一下明白了为什么她一累就脸色发白；为什么她不能干体力活；为什么她怕冷，不能感冒；为什么她住那样的房子---因为医院近；甚至，我也明白了---为什么她拒绝我。小徐显然也不知道这个真相，他愣在一旁一时有些不知所措。我抢先冲进急诊室，小成也看见了我，她显然也听见了医生叫我们。她的目光平静，柔和，还有 --- 期待。我走到小成身边，抓住她的手，对她轻声说：我知道了。你该早点告诉我。我和你一起，我们一起面对，好吗？说着把她的手贴在了自己脸上，小成的眼泪刷地下来了。这时候，小徐进来正好看见。护士着急地说，她不能激动的，你们出去！出去！<br />  <br />我终于得到了小成的认可。她后来对我说，其实她开始是觉得我失恋了，很可怜，愿意帮我多做点事，后来就慢慢喜欢上了我；可是后来她发现我在防她，很让她伤心；她拒绝我一方面是因为这个 --- 女孩子的报复心，她也有；另一方面，她早知道自己的病，也不想拖累我。最后她在病床边倚着我，泪光闪闪的对我说："你知道吗？一个女孩子在外面，很多时候真累啊。我晕倒的时候，心里想，真去了，别的没什么，就是好后悔啊，我应该和你爱一场啊。我是不是好自私？我真的是不甘心。"我什么也没说，只是把她紧紧的搂在怀里。</p>
						<p>小成还告诉我，其实她是出生就有这个病了，他父母亲一直在做生意，家里人其实不缺钱。家里人让她读书读到高中，考大学已经考上了，但是担心远没人照顾，死活不让她去上。小成很不愿意自己成为家里人的累赘，自己跑了出来打工，决心自己养活自己。她以前就和家里人耳濡目染，所以对生意很在行。正好我把她招了进来。她说，小徐一直对她很好，她加班小徐一直陪着，可是她知道他们不可能。</p>
						<p>没几天小成坚持要出院，她说住了多少次院了，还是家里舒服 --- 不就是静养吗。我们搬在了一起。这是我的坚持要求，我说我一定要照顾好你。小徐要辞职，我没说什么同意了。最后，我和他一起吃了顿晚饭。他深情黯然的说，没想到她有那么严重的病，我就是愣了一会，哎，你先跑进去了。后来喝了点酒，他又说，你比我有钱，她当然选你。我一般抓住他，对他说，你胡说，小成不是那种看重钱的人。至于钱，小徐，好好努力，你还年轻，你也会有钱，也许比我还有钱。到那时也许你会明白小成。</p>
						<p>3年以后的一个偶然的机会，我又在闵行体育公园附近见到了小徐。不过他早已今昔非比，他对我说，他一直没忘我的话，也自己憋了一口气。辞职了以后，他先是自己骑三轮车从七宝蔬菜批发市场批蔬菜到小区卖，后来自己租了个摊位，后来卖猪肉，再后来自己买了一辆二手嘉宝，自己去江苏进猪肉卖。3年以后，刚刚挣了50万，在附近买了一套80平方的房子。他最后说，还是要谢谢你。我想起身边和网上很多朋友不停地抱怨房价飞涨，抱怨没有工作，抱怨辛苦赚不到钱 ，抱怨这里抱怨那里--- 其实他们连一个高中都没有读完的小徐都不如！</p>
						<p>23，乏术<br />我看到有人在怀疑我的经历的真实性，想要向他们争辩，想想又算了。每个人的生活轨迹不同，想法不同，就是向他们证实了又能怎么样呢？能改变生活现状吗？我还是写下去，就算是经历了这么多的总结吧。但愿有朋友在看的时候能够获得共鸣，获得激励，产生力量，进而改变你们自己的人生。如果不信，也没什么，因为我们生活不同，而且都要继续。</p>
						<p>小成和我的关系定了以后，我们会经常长时间的交谈。她读书很多，尤其喜欢古诗词。我们很多事情都谈的津津有味，可以就一个事件谈上几个小时。现在我在想，谈恋爱谈恋爱，说谈是有道理的吧。她有时候会从梦里醒来，一声不响地看我半天。我问她为什么，她说她高兴，睡不着。有时候她会流泪，说是想家了。我要和她家联系，她又不让。我不再让她查店，每天带着她看看就行了。可是她闲不住，对我说，我要闲着就在家耗着，跑这来干嘛？我也没办法。本想生意就这么发展下去，我们也不会担心未来钱的事。可是这时候生意忽然被一件没有料到的事情影响了。</p>
						<p>过了几个月，我们这里要听说要修路了，要打通和大马路接上。因为我们有2家店面是属于临时房，肯定会被拆掉。临时商业房拆掉，市政会补一点钱，但是对我们来说并不划算，因为附近的铺面已经涨价了，客户也熟悉了。我考虑了很久，也没有什么办法。为了不让小成知道担心，我并没有在她面前表现的压力很大。</p>
						<p>同时我也暗暗留心小成的病情，我觉得好像越来越严重了。我也到处查找她的这个病的原因，治疗方式和注意事项。大夫给我说的是对的，这个病一般不能结婚，更禁止生育，因为她的心脏会受不了。一般在婴儿时期手术解决，成人后手术成功率很低。目前除了静养，不能劳累，尤其不能感冒。除此之外，还没有比较好的治疗办法。我觉得这个障碍比我以前碰到的任何一个都艰巨、困难，有一种一筹莫展的感觉。</p>
						<p>
								<br />24，诀别<br />也许很多朋友的感情经历比我复杂的多，但是一直以来我都认为命运待我不公，一直以来我也在问上苍：为什么不给我一段长一点的真爱，比如说一辈子。直到不久以前，我才解开这个心结（请看后续章节）。看到这一节的标题，朋友们想必已经知到了结果。原谅我写得这么慢，我不能平静自己的心情。</p>
						<p>小成自己也有感觉。她有时候会搂住我说，真不想把你交给另一个人，我让她别胡说。有时候她会说，我走了以后，你一定要找一个好的。你看，她在不停的矛盾。我觉得她真是普通人，一个平凡女孩的心思和想法她都有，正是这些让我觉得她一个让我无比怜惜的人。她的心跳越来越快，也不规则了。我不再让她跟我去店里，还找了一个阿姨照顾她。有一天，她对我说，不行，我帮你赚了那么多钱，从来没有做过主妇的感觉，你要把钱都交出来，我要管钱，做做主妇。我笑着把存折、密码、身份证、房产证都交给了她。有什么不能呢？这些我失去了相信还可以赚回。</p>
						<p>到了秋天，天气冷了，小成好象更不好了。她脸色不好，心跳过快，我还是把她送进了医院。我觉得一定要把她的家人叫来。她这次没有拒绝，但是她说她先和家里人打个电话，不让我听。电话不到2天，她的父母亲就赶来了。不知道她和她的父母说了什么，她的父母见了我特别的亲，一个劲在我面前流泪，还说这孩子脾气太倔了。我们3个人的时候，她的父母亲会象我自己的父母一样，不停的让我注意身体，多吃一些，多穿一些。</p>
						<p>我真的不愿意回忆那个日子，12月21号，她住进医院2个月半月的时候。其实她走的时候，心脏已经很大了。医生说，这样的病一般是心脏忽停，突然死亡，象她这样的比较少，她也属于比较严重的了。我留着泪在她床前听到最后的一句话是：难受，胸好闷。谢谢。</p>
						<p>25，礼物<br />我送走了小成。我不知道怎样描述当时我的悲痛欲绝的心情。因为我不能在她的父母面前表现出来，否则她的母亲根本没有办法控制自己的感情。想起前面有个朋友问我，如果用我的全部身家去换取真爱，我会怎样选择？我想我在这里可以回答了：朋友，如果你的一只手要离你而去，代价是你的全部身家，你会怎样选择？如果你有犹豫，那答案很简单---这不是你的真爱。我感觉到我的心已经是不再完整的了。</p>
						<p>在她的遗物中我发现了以前给她的存折，但是已经少了一个房产证---我的别墅的房产证。当然，我还发现了一封信。其实我早就知道她在写遗书，只是不忍在 内心承认罢了。她这么聪明的女孩，一定会想到这些的。</p>
						<p>遗书里说：对不起，我不能和你一起忙下去了。别太难过，以后就是你要经常想我。遇见你很好，我本来害怕就这样糊里糊涂地走了，现在知道我的生命比我以前的想法好多了，我不那么遗憾了。就是会带给你和我父母痛苦......</p>
						<p>......</p>
						<p>你要坚强，要挺住，你还要走很长的路吧。我把你的别墅给卖了 --- 这是你给另外一个女孩买的，是吗？我做主了，你会怪我吗?因为我们的熟食店不是长久之计，你也不会甘心一辈子卖肉，是吧？我去定了一个商铺，首付就用别墅卖的钱，剩下的2个店，卖了吧，还有拆迁的店，拿到了补偿，和我们（我用了我们，你愿意吗？）以前的钱，不少了吧，别乱花。然后到我家去，和我爸交流一下，也许你能够找到机会。他会帮你的，我和他们说过了。你应该有更大的事业。</p>
						<p>如果我这样替你做主，真的赚了钱，就算是我留给你的礼物吧。亏了，就当我以前为你忙碌卖命，我应得的钱我又拿走了。呵呵，我不想要钱，只想你过的快乐一些，就看你自己的努力了......</p>
						<p>
								<br />26，转型<br /> 小成的事情之后，我的生意大不如前了，可能也和我的心情有关。2003年1月底，我卖掉了我的2个店。又过了3个月，我拿到了市政补助的资金。加上我手里的钱，一共109.5万。我的别墅，小成以8500左右的单价卖出，用80万左右做首付买了一个300平方左右的商铺，但是要4个月以后交房。这个地方的商铺，近一年后我在2003年12月时以每平方每天7元出租，一个月能收回6万多块钱，扣除还款我每月还能剩余4万块钱。这已经基本相当于我以前4个店一个月的盈利了，今年年初，我让评估师估了一下价格，已经到19000左右每平方了。小成，你又一次让我见识了你的聪慧。</p>
						<p>想到以前小成每天那么开心，那么充实的样子，现在我明白了：其实她一直处在生命随时会停止的阴影下，所以她的生活态度反而那么豁达，开朗，而又忙碌充实。这才是生命本来应该有的态度。我也应该这样生活。而且我不能仅靠收租为生。我又开始想着新的事业了，我决定如小成所说，到她家里去一次。我和她父母联系了一下，他们很热情，让我随时都可以去。我虽然比以前多了100万现金，可是我心里面一点也不轻松，因为这一次我面临着从饮食业到其他行业的转型，其实也是一种重头再来。</p>
						<p>2003年4月，我去了小成家。小成的父母在做皮革生意，他们一直在为国外的汽车和家具提供定制的真皮座椅和包垫。真没想到，他们生意做得很大。而且他们那里家家是作坊，户户是工厂，浙江真是让我见识了民营经济的力量。和她的父母交流之后，我才知道自己这100万现金根本不够做这个方面。她家人对我说，可以提供资金帮助，我也可以和他们合股做，我愿意留下来也行。但是我拒绝了。我有种感觉，这不是我要找的那个行业，另外我还是愿意自己奋斗。她的父母认了我为干儿子，我走的那一天，在她家吃饭，我喝醉了。她的母亲又哭了。</p>
						<p>27，尝试<br />我最终没有接受小成父母的美意，不知道远在天国的小成知道我的这个选择后是满意还是不满意。我想她是理解我的吧，我一直那么独立，一直以为自己的事情要自己做。虽然没有做她父母的那个行业，但是她父母临走时说的一句话倒是让我思索很久。她父母说，现在他们的产品慢慢地国内的汽车厂家也开始要货了，这是不是说明这个大行业内还是有机会的呢？</p>
						<p>2003年4月底我回到上海以后，又以70万总价70%贷款买了一套商品房，毕竟自己也要住的，付房租不如付贷款了。然后我就主要在考虑下一步的努力方向了。饮食业我是不再考虑了，可能有点伤心的原因在里面吧。我希望有个崭新的事业，崭新的我。IT业我也认为不好，原因是我看到这几年身边的年轻人开公司有80%选择IT业，竞争太激烈了，而且经营状况并不理想，我估计还要至少几年淘汰这个行业才会正常。电子加工，服务业什么的，我都考虑过。想来想去比较了很长时间，我决定尝试代理国外品牌做汽车机油和高档润滑油。我觉得小成的父母给我的启示还是有几分道理的：国内的汽车市场现在才刚刚开始，还会有10几年的高速发展期，这个行业就像10几年前做计算机行业一样，是值得我投入的。</p>
						<p>我的习惯是：想法一经决定，行动决不迟疑。5月初，我找好了办公地点，开始招人；5月底，办公家具和人员进场；6月份，我拿到了营业执照和发票。我开始熟悉这个市场的渠道、客户、产品。那个时候我几乎每天都去吴中路，每天都上网查资料，每天都向国外写电子邮件询问产品性能，报价，索要样品等等信息。到了8月份的时候，我公司终于定下了一个全权代理和4项一级代理的产品。然后我开始在江浙一带的城市里不停地奔波，寻找、拜访代理和零售商，以及和他们洽谈。我是这样认为，以我目前的实力在上海的这个行业里撕开口子太难了，我应该先从周边入手。开始我是租车开，后来10月份的时候，我自己贷款卖了一辆马自达-福美来。我的现金我认为还是应该留着公司发展用。</p>
						<p>虽然2003年下半年我做的很辛苦，但是到了年底一算，我的这个公司并没有赚钱，反而亏损了12万 - 平均每个月2万的亏损。 可能有的朋友会问，汽车行业2003年是最热了，你怎么还亏了呢？这个亏损我却一点也没有心痛和意外，一方面是因为我已经经历了很多生意上的风雨，更重要的是因为这都在我的预想之内。</p>
						<p>做生意有很多种，有的人是以长时间积累的技巧、经验、关系和渠道挣钱—这是以时间换空间；有的人是一招鲜、吃遍天—这是垄断或是以技术制胜；还有的人是用钱换取技巧、经验、关系和生意流通的渠道，这是以空间换时间 - 我就是这么做的。我刚进入这个行业，经验、关系、客户基础和渠道都不行，一进来就赚钱是不太可能的。但是更不能害怕花钱而停止脚步，生意一定要走出去，开发的流程不能停止。这半年来，虽然我出货不多，远远不能养活公司，但是我一是组织了团队，熟悉了团队，锻炼了团队的力量；二是建立了销售渠道，江浙一带我们开发了70多家下级代理，我们让他们试用先打开市场，还要熟悉竞争对手，客户公关等等，这一切都进展顺利。2003年汽车销售是很热，但是我认为我们这一块属于汽车保养和维修类会有一个滞后期。我们2003年底的业绩已经大大好于8月份。对于即将到来的2004年，我胸有成竹。</p>
						<p>28，归宿<br />公司的实际经营果然是按照我的预想发展。2004年1月份，我们的销量获得了突破，我们已经有些许的盈利了。2月份因为过节，生意比1月份下降5%。3月份获得30%的大幅增长，这样我们已经净盈利4万了。我加大了激励力度，我的团队志气如虹，一个个宣称今年底要比3月份的销量翻番。我知道，这是有可能的。因为我们前期搭就的平台完全可以承载这个销量 ---- 70~ 100个有规模的下级代理， 每个月每个代理的销量达到8000 ~ 10000 元并非难事。</p>
						<p>我的公司里招了几个上海的女孩子。原来我很少和上海女孩打交道 --- 其实我就很少和女孩打交道 ，阿芸和小成而已。但是通过和我们公司的上海女孩沟通，合作，熟悉之后，她们让我以前对上海女孩的看法大为改观 ----- 我以前是心里有偏见了。她们初看打扮时髦而又干练，说话快而利落，脑子清楚毫不拖泥带水，对价格非常敏感，你以为她们很势力很在乎金钱。是的，对普通人陌生人是的。可是交往久了，我觉得她们工作尽职尽责 ---- 加班从来都是自己要求的，自己的事自己做完 ；做事很有责任心 ---- 对公司的财物，以及用水用电完全像对自己家的一样；很重感情 ---- 我们公司有不只一个女孩为了男朋友、同学而付出了金钱，时间，甚至家庭的埋怨。也许，外人对他们的误解只是因为大家做事情的方法不同罢了，毕竟，人更重要的是心灵和思想。</p>
						<p>可是我的感情生活依旧空白。我觉得现在的我不可能再发展一段恋情 --- 在我的心里小成一刻也不曾离开。每天我都会看小成给我的那封信，那信其实写得很长。看了之后我总觉得她离我不远，我的心里也觉得很温暖。小成，你的心灵和思维脱离了肉体的羁绊，应该飞的更快更远了吧。这段时间由于小成的离去，我每天努力的工作回家之后，会觉得失去了归宿感。有时候我会忽然想，我来这里干什么？哪里是我的归宿呢？我努力奋斗，努力挣钱，挣了很多钱又怎么样呢？</p>
						<p>这是我第一次考虑这个问题 ---- 金钱对我意味着什么。以前生存和事业的压力，以及一个接着一个的打击和磨砺让我始终无暇顾及这个具有终极意义的话题。是啊，虽然我现在还不是很有钱，但是我有钱了以后怎么办？以前我国传统的精神也只讲过：君子爱财，取之有道。可是如果取到了有怎么样呢？原谅我的陋学，我没有看到这方面的阐述。很多中国人有钱了以后，生活奢靡、大讲排场、意志低落、胡乱花钱，很多还丧失了生活的动力，多少人在贫贱时坚持的修身养性，成仁取义，在富贵来临时烟消云散。更有很少的人捐钱给慈善事业和救助他人，我想这一切也和我们的传统文化有关。我坚决不要这样的生活。可是为什么西方人有那么多有钱人，给慈善事业捐钱呢？而且他们一些穷人也有给慈善事业捐钱的习惯呢？</p>
						<p>一个 偶然的机会我看到了《圣经 - 马太福音 》，里面的阐述让我如梦初醒。那里面说，虽然富人因为上帝给予的机会和能力获得了财富，但是那财富并不是富人的，只是上帝因为看到财富由于在富人手中增值而让那些富人代为保管的，一旦有需要，应该把财富还给所有人。这就是我所要寻找的原因。我于是如饥似渴地每天看《圣经》，那里面的文字让我的安静，安定，安心。在这里面，我找到了和我心灵合拍的仁爱心、慈悲心、谦卑心和使命心。我进一步了解到我以前毫无信仰，或者以自己为信仰时的无知、自以为是、狂妄自大和故步自封。朋友，也许你和我信仰不同，请不要在这里争执孰是孰非。也许只有每个人只有经历苦苦思索和重重磨砺，才能接近你所认为的真理。最终我在这里找到了归宿，也找到了问题的答案。</p>
						<p>我在徐家汇教堂受了洗，成为主的信徒。受洗之后，我每周都要去教堂坐坐。我知道，小成一定会成为天使，主一定也会指引我。我以前认为的爱是我前进的动力，这爱字，今天我才体会到更广泛更宏大的意义。它已经成为了我的使命。</p>
						<p> </p>
						<p>29，疑问<br />2005年的1月，我在徐家汇附近，漕溪路旁的那块大空地上停好车出来的时候，忽然意外地发现了芸和她的男朋友---- 现在应该已经是老公了吧，因为他们手里还抱着一个2岁大小的孩子。他们显然也发现了我，但是显然双方都有点错谔。我先打招呼，笑着说，这是你们的孩子啊？真漂亮！我们之间的气氛一下融洽了。交谈中我得知，他们2001年底结婚，2002年底有了这个可爱的女儿。他们的生活不错，买车买房也是2004年的事。我衷心的祝福他们。他们问我的情况，我也告诉了他们，我也得到了他们的祝福。我们还约好下次一起吃饭。</p>
						<p>我曾经以为，如果我再见到芸，我绝对不会保持平静，甚至我不知道怎么见她。可是我做到了，我不仅做到了心情平静，还做到了如常交流，更做到了绝对真心地祝福他们，理解他们。经历了那么多，看到了那么多，失去了那么多，我也得到了那么多。穿破围墙，我的心灵获得了更大的空间和放飞的舞台。</p>
						<p>我公司的生意到了2004年的9月份已经能够保持每个月70万左右的营业额，12万左右的利润了。10，11，12三个月我们又在原来的基础上开拓了30家左右的零售店面，基本能够实现每个月15万左右的利润。到年底的时候，我手上的资金加上商铺出租收入，公司原有资金和盈利，已经达到了180万。我的一个专门做公司投资的朋友说，像我们这样的小公司，只要我能保持公司连续盈利36个月，那么公司的价值一般就是公司60个月的利润总和。他笑着说，算算你的公司也值四五百万了吧，如果你保持现在的盈利状况。</p>
						<p>我的心中不相信"保持现状"这句话，以前的经历屡屡说明这一点：没有人能够保持现状。只有改变现状，才能保持不败。可是我经过粗粗一算之后，心里产生了疑问。因为我要提升目前的经营水准，势必重新打造一个更大更快速的经营平台，管理要上新台阶，还要进行更严密更系统的市场推广计划--- 我叫它"重生"计划。这个计划我粗粗算了一下，要求我投入300万左右的资金。我陷入了思考：这样的计划风险是否太大？如果失败，我会失去现有的所有公司盈利和手上资金，还有我部分的不动产。那么我应该保持现状，这也没什么不好，这样总有其他竞争者先做，然后我再静观事变吗？如果我实施"重生"计划，完成后如果发挥100%的效果，我9~10个月可以收回成本，公司随后还有应该有更大的发展。如果发挥70%的效果，我15~18个月可以收回成本。如果发挥50%以下的效果，那就是失败。</p>
						<p>可是奋斗这种东西已经进入了我的血液，变成了我的基因。我实在不能忍受自己什么也不做而失去这个成为自己领域内前几位的机会。为主，为小成，为我，为我所有的朋友和家人，还有我的员工，我决定放手一博。我把买的商品房（现在已经涨价了，达到150万了）和汽车做了二次抵押，贷了120万资金，这样我手上的资金已经有300万了。</p>
						<p>2004年12月21日夜里11点，我终于完成了17万字的详细的"重生计划"的策划报告。我没有忘了这一天，我一定要在这一天完成这报告。</p>
						<p>半夜里我开车从主干道下来，到了以前我和小成三号店的旧址 ---- 她是在这里爱上我，我也是在这里爱上她的。这里一切已经今昔非比，再也见不到路边的临时房了，全部都是宽宽的马路和人行道，谁也不会再关心这里曾经发生的事情了。我停下车，下车来靠着车点燃一只烟。看着天边半满的月亮，我清清楚楚地看见了小成妍妍的笑脸。我也笑了，只是脸上已经流满了泪水。</p>
						<p>朋友们，我在上海的奋斗岁月----- 结束了吗？不，我心里知道，一切才刚刚开始！</p>
						<p>30，经验（大结局）</p>
						<p>下面是我自己的感悟和我的经验，权做参考：<br />1， 人生就是投资和收益的人生。如果你有钱，就投入金钱；如果你没有金钱，而有经验和能力，就投入经验和能力；如果你既没有金钱，也没有经验和能力，但是你有热情、勤奋和努力，那就投入热情、勤奋和努力。如果你既没有金钱，也没有经验和能力，连热情、勤奋和努力也没有，那就别想这些了。<br />2， 比赚钱更重要的是找到你自己的赚钱动力；<br />3， 比金钱重要的是时间，比时间重要的是时机，比时机重要的是你要抓住时机的决心，动力和准备！<br />4， 别好高骛远，机会一般都在你看不起眼的角落里藏着；<br />5， 舍得投入；<br />6， 决定一下，行动要快；<br />7， 永远尽可能准备好资源，随时准备抓住机会，要快！<br />8， 待人以诚，对人以善。有时候，机会是别人给的；<br />9， 给别人的比别人期待的多一些（这是我抄李嘉诚的，我很喜欢）；<br />10， 赚钱有个普遍的法则：多做，快做，动脑筋变着花样做，就是别跟着别人一样做。<br />11， 合理规划有钱以后的日子，会让你走的更远；<br />12， 有信仰，有原则，有爱心。 </p>
				</h3>
		</h3>
<img src ="http://www.cppblog.com/zhenyu/aggbug/15911.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-12-03 01:11 <a href="http://www.cppblog.com/zhenyu/archive/2006/12/03/15911.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>人生是个状态机</title><link>http://www.cppblog.com/zhenyu/archive/2006/11/25/15653.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Sat, 25 Nov 2006 07:09:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/11/25/15653.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/15653.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/11/25/15653.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/15653.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/15653.html</trackback:ping><description><![CDATA[
		<p>By Grace, written in 2003-06-26</p>
		<p>可怜，人就是为了几个钱憋死; 可是不工作，又会闷死。我现在算是有点想明白了，人需要的不是国内或者国外的那种生活，要的是变化。在家待久了，想出去看看；在外面混久了，想回家待着；工作久了想放长假；老歇在家里就想忙忙碌禄的去上班，不管干的活有没有意义。</p>
		<p>这是人性，也可真是一门艺术。比如说我现在就想着回家，因为家里有了新房子可以看看，有了新朋友可以认识，有了新地方可以玩玩。</p>
		<p>人大概就是这样的，找个名头吃顿饭，找个新话题吹一阵牛，等到新鲜劲过后，又要开始寻找下一个话题，下一个名头，仅此而已，哪里有新鲜的东西就往哪里钻。</p>
		<p>我觉得每次自己感到生活没劲的时候，就是呆在一种状态上太久了，渴求一种变化。比如说年底回来结婚啊，想想有新鲜的事情可以做了，没做过的，就兴奋了。生小孩也是一样，还有找到新工作啊，开始炒股票阿，买了新电器阿，总之，平淡的生活需要推陈出新的“热点“，否则就觉得没劲。</p>
		<p>就比如非典也是一个热点，改变了大家固有的生活模式，大家很起劲儿啊！非常时期的感觉，让大家恢复平静后，再回到过去的生活模式时又有了新鲜劲，提高了满足感，可以将那种本已厌倦的状态再持续下去。如果生活中能找到一个属于你的热点，日子就好过喽，换句话说，充实了。</p>
		<p>我最近在做状态模拟机，工作上的课题，觉得和生活的状态太一致了，以至于我休息天也逃脱不了那个模拟机的阴影，朝思暮想，发现原来科学也可以用来模拟混沌的社会问题。嘿嘿，人不就是状态机嘛，需要从一个状态jump到另一个状态，这才健康。</p>
<img src ="http://www.cppblog.com/zhenyu/aggbug/15653.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-11-25 15:09 <a href="http://www.cppblog.com/zhenyu/archive/2006/11/25/15653.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在win32Asm中使用C库</title><link>http://www.cppblog.com/zhenyu/archive/2006/05/12/6981.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Thu, 11 May 2006 21:39:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/05/12/6981.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/6981.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/05/12/6981.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/6981.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/6981.html</trackback:ping><description><![CDATA[
		<p>
				<font face="Courier New">一般调用动态C库msvcrt.dll,所以要includelib msvcrt.lib,文件可以从VC的lib目录里面获取。<br /></font>
		</p>
		<table class="dtTABLE" cellspacing="0">
				<tbody>
						<tr valign="top">
								<td width="26%">
										<font face="Courier New">MSVCRT.LIB</font>
								</td>
								<td width="41%">
										<font face="Courier New">Multithreaded, dynamic link (import library for MSVCR71.DLL). Be aware that if you use the Standard C++ Library, your program will need MSVCP71.DLL to run.</font>
								</td>
						</tr>
				</tbody>
		</table>
		<br />
		<br />
		<font face="Courier New">asm源代码<br />//test.asm 感谢aogo的masmplus<br />;MASMPlus 代码模板 - 控制台程序<br />;--------------------------------------------------------------------<br />.386<br />.model flat, stdcall<br />option casemap :none</font>
		<p>
				<font face="Courier New">include windows.inc<br />include user32.inc<br />include kernel32.inc<br />include masm32.inc</font>
		</p>
		<p>
				<font face="Courier New">PUBLIC main               <font color="#0000ff">//提供main给msvcrt链接</font></font>
		</p>
		<p>
				<font face="Courier New">includelib user32.lib<br />includelib kernel32.lib<br />includelib masm32.lib<br />includelib msvcrt.lib<br />.data<br /> lpMsg  db "Hello World!",0<br />.code<br />extrn printf :near<br /><br />main PROC C           <font color="#0000ff">//注意调用规则为 cdecl</font><br /> invoke locate,2,2   ;设定输出文本的坐标<br /> push  offset lpMsg<br /> call   printf<br /> add esp,4<br /> invoke ExitProcess,0<br /> ret 0<br />main ENDP<br />end         <font color="#0000ff">//end后面不要跟入口标示</font><br /></font>
		</p>
<img src ="http://www.cppblog.com/zhenyu/aggbug/6981.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-05-12 05:39 <a href="http://www.cppblog.com/zhenyu/archive/2006/05/12/6981.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转贴收藏]亲密接触VC6.0编译器</title><link>http://www.cppblog.com/zhenyu/archive/2006/04/19/5856.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Tue, 18 Apr 2006 21:09:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/04/19/5856.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/5856.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/04/19/5856.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/5856.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/5856.html</trackback:ping><description><![CDATA[
		<font face="Courier New">大家可能一直在用VC开发软件，但是对于这个编译器却未必很了解。原因是多方面的。大多数情况下，我们只停留在“使用”它，而不会想去“了解”它。因为它只是一个工具，我们宁可把更多的精力放在C++语言和软件设计上。我们习惯于这样一种“模式”：建立一个项目，然后写代码，然后编译，反反复复调试。但是，所谓：“公欲善其事，必先利其器”。如果我们精于VC开发环境，我们是不是能够做得更加游刃有余呢？ <br /><br />　　闲话少说。我们先来看一下VC的处理流程，大致分为两步：编译和连接。源文件通过编译生成了.obj文件；所有.obj文件和.lib文件通过连接生成.exe文件或.dll文件。下面，我们分别讨论这两个步骤的一些细节。<br /><br /><br />　　编译参数的设置。主要通过VC的菜单项Project-&gt;Settings-&gt;C/C++页来完成。我们可以看到这一页的最下面Project Options中的内容，一般如下：<br /><br />/nologo /MDd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_AFXDLL" /D "_M<br />BCS" /Fp"Debug/WritingDlgTest.pch" /Yu"stdafx.h" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c<br /><br />　　各个参数代表的意义，可以参考Msdn。比如/nologo表示编译时不在输出窗口显示这些设置（我们可以把这个参数去掉来看看效果）等等。一般我们不会直接修改这些设置，而是通过这一页最上面的Category中的各项来完成。<br /><br />　　1) General：一些总体设置。Warning level用来控制警告信息，其中Level 1是最严重的级别；Warnings as errors将警告信息当作错误处理；Optimizations是代码优化，可以在Category的Optimizations项中进行更细的设置；Generate browse info用以生成.sbr文件，记录类、变量等符号信息，可以在Category的Listing Files项中进行更多的设置。Debug info，生成调试信息：None，不产生任何调试信息（编译比较快）；Line Numbers Only，仅生成全局的和外部符号的调试信息到.OBJ文件或.EXE文件，减小目标文件的尺寸；C 7.0- Compatible，记录调试器用到的所有符号信息到.OBJ文件和.EXE文件；Program Database，创建.PDB文件记录所有调试信息；Program Database for "Edit &amp; Continue"，创建.PDB文件记录所有调试信息，并且支持调试时编辑。<br /><br />　　2) C++ Language：pointer_to_member representation用来设置类定义/引用的先后关系，一般为Best-Case Always表示在引用类之前该类肯定已经定义了；Enable Exception Handling，进行同步的异常处理；Enable Run-Time Type Information迫使编译器增加代码在运行时进行对象类型检查；Disable Construction Displacements，设置类构造/析构函数调用虚函数问题。<br /><br />　　3) Code Generation：Processor表示代码指令优化，可以为80386、80486、Pentium、Pentium Pro，或者Blend表示混合以上各种优化。Use run-time library用以指定程序运行时使用的运行时库（单线程或多线程，Debug版本或Release版本），有一个原则就是，一个进程不要同时使用几个版本的运行时库。Single-Threaded，静态连接LIBC.LIB库；Debug Single-Threaded，静态连接LIBCD.LIB库；Multithreaded，静态连接LIBCMT.LIB库；Debug Multithreaded，静态连接LIBCMTD.LIB库；Multithreaded DLL，动态连接MSVCRT.DLL库；Debug Multithreaded DLL，动态连接MSVCRTD.DLL库。连接了单线程库就不支持多线程调用，连接了多线程库就要求创建多线程的应用程序。<br /><br />　　Calling convention可以用来设定调用约定，有三种：__cdecl、__fastcall和__stdcall。各种调用约定的主要区别在于，函数调用时，函数的参数是从左到右压入堆栈还是从右到左压入堆栈；在函数返回时，由函数的调用者来清理压入堆栈的参数还是由函数本身来清理；以及在编译时对函数名进行的命名修饰（可以通过Listing Files看到各种命名修饰方式）。Struct member alignment用以指定数据结构中的成员变量在内存中是按几字节对齐的，根据计算机数据总线的位数，不同的对齐方式存取数据的速度不一样。这个参数对数据包网络传输等应用尤为重要，不是存取速度问题，而是数据位的精确定义问题，一般在程序中使用#pragma pack来指定。<br />4) Customize：Disable Language Extensions，表示不使用微软为标准C做的语言扩展；Eliminate Duplicate Strings，主要用于字符串优化（将字符串放到缓充池里以节省空间），使用这个参数，使得<br /><br />char *sBuffer = "This is a character buffer";<br /><br />char *tBuffer = "This is a character buffer";<br /> <br /><br />　　sBuffer和tBuffer指向的是同一块内存空间；Enable Function-Level Linking ，告诉编译器将各个函数按打包格式编译；Enables minimal rebuild，通过保存关联信息到.IDB文件，使编译器只对最新类定义改动过的源文件进行重编译，提高编译速度；Enable Incremental Compilation，同样通过.IDB文件保存的信息，只重编译最新改动过的函数；Suppress Startup Banner and Information Messages，用以控制参数是否在output窗口输出。<br /><br />　　5) Listing Files：Generate browse info的功能上面已经提到过。这里可以进行更多的设置。Exclude Local Variables from Browse Info表示是否将局部变量的信息放到.SBR文件中。Listing file type可以设置生成的列表信息文件的内容：Assembly-Only Listing仅生成汇编代码文件（.ASM扩展名）；Assembly With Machine Code生成机器代码和汇编代码文件（.COD扩展名）；Assembly With Source Code生成源代码和汇编代码文件（.ASM扩展名）；Assembly, Machine Code,and Source生成机器码、源代码和汇编代码文件（.COD扩展名）。Listing file name为生成的信息文件的路径，一般为Debug或Release目录下，生成的文件名自动取源文件的文件名。<br /><br />　　6) Optimizations：代码优化设置。可以选择Maximize Speed生成最快速的代码，或Minimize Size生成最小尺寸的程序，或者Customize定制优化。定制的内容包括：<br /><br />　　Assume No Aliasing，不使用别名（提高速度）； <br /><br />　　Assume Aliasing Across Function Calls，仅函数内部不使用别名；<br /><br />　　Global Optimizations，全局优化，比如经常用到的变量使用寄存器保存，或者循环内的计算优化，如<br /><br />i = -100;<br /><br />while( i &lt; 0 ){ i += x + y;}<br /> <br /><br />　　会被优化为<br /><br /><br />i = -100;<br />t = x + y;<br />while( i &lt; 0 ){i += t;}<br />Generate Intrinsic Functions，使用内部函数替换一些函数调用（提高速度）； <br />Improve Float Consistency，浮点运算方面的优化；<br />Favor Small Code，程序（exe或dll）尺寸优化优先于代码速度优化；<br />Favor Fast Code，程序（exe或dll）代码速度优化优先于尺寸优化；<br />Frame-Pointer Omission，不使用帧指针，以提高函数调用速度；<br />Full Optimization，组合了几种参数，以生成最快的程序代码。<br /> <br /><br />　　Inline function expansion，内联函数扩展的三种优化（使用内联可以节省函数调用的开销，加快程序速度）：Disable不使用内联；Only __inline，仅函数定义前有inline或__inline标记使用内联；Any Suitable，除了inline或__inline标记的函数外，编译器“觉得”应该使用内联的函数，都使用内联。<br /><br />　　7) Precompiled Headers：预编译头文件的设置。使用预编译可以提高重复编译的速度。VC一般将一些公共的、不大变动的头文件（比如afxwin.h等）集中放到stdafx.h中，这一部分代码就不必每次都重新编译（除非是Rebuild All）。<br /><br />　　8) Preprocessor：预编译处理。可以定义/解除定义一些常量。Additional include directories，可以指定额外的包含目录，一般是相对于本项目的目录，如..\Include。<br /><br /><br />　　连接参数的设置。主要通过VC的菜单项Project-&gt;Settings-&gt;Link页来完成。我们可以看到这一页的最下面Project Options中的内容，一般如下：<br /><br />/nologo /subsystem:windows /incremental:yes /pdb:"Debug/WritingDlgTest.pdb" /debug /machi<br />ne:I386 /out:"Debug/WritingDlgTest.exe" /pdbtype:sept<br /><br />　　下面我们分别来看一下Category中的各项设置。<br /><br />　　1) General：一些总体设置。可以设置生成的文件路径、文件名；连接的库文件；Generate debug info，生成Debug信息到.PDB文件（具体格式可以在Category-&gt;Debug中设置）；Ignore All Default Libraries，放弃所有默认的库连接；Link Incrementally，通过生成. ILK文件实现递增式连接以提高后续连接速度，但一般这种方式下生成的文件（EXE或DLL）较大；Generate Mapfile，生成.MAP文件记录模块相关信息；Enable Profiling，这个参数通常与Generate Mapfile参数同时使用，而且如果产生Debug信息的话，不能用.PDB文件，而且必须用Microsoft Format。<br /><br />　　2) Customize：这里可以进行使用程序数据库文件的设置。Force File Output ，强制产生输出文件（EXE或DLL）；Print Progress Messages，可以将连接过程中的进度信息输出到Output窗口。<br /><br />　　3) Debug：设置是否生成调试信息，以及调试信息的格式。格式可以有Microsoft Format、COFF Format（Common Object File Format）和Both Formats三种选择；Separate Types，表示将Debug格式信息以独立的.PDB文件存放，还是直接放在各个源文件的.PDB文件中。选中的话，表示采用后者的方式，这种方式调试启动比较快。<br /><br />　　4) Input：这里可以指定要连接的库文件，放弃连接的库文件。还可以增加额外的库文件目录，一般是相对于本项目的目录，如..\Lib。Force Symbol References，可以指定连接特定符号定义的库。<br /><br />　　5) Output：Base Address可以改变程序默认的基地址（EXE文件默认为0x400000，DLL默认为x10000000），操作系统装载一个程序时总是试着先从这个基地址开始。Entry-Point Symbol可以指定程序的入口地址，一般为一个函数名（且必须采用__stdcall调用约定）。一般Win32的程序，EXE的入口为WinMain，DLL的入口为DllEntryPoint；最好让连接器自动设置程序的入口点。默认情况下，通过一个C的运行时库函数来实现：控制台程序采用mainCRTStartup (或wmainCRTStartup)去调用程序的main (或wmain)函数；Windows程序采用WinMainCRTStartup (或 wWinMainCRTStartup)调用程序的WinMain (或 wWinMain，必须采用__stdcall调用约定)；DLL采用_DllMainCRTStartup调用DllMain函数（必须采用__stdcall调用约定）。Stack allocations，用以设置程序使用的堆栈大小（请使用十进制），默认为1兆字节。Version Information告诉连接器在EXE或DLL文件的开始部分放上版本号。<br /><br /><br />　　值得注意的是，上面各个参数是大小写敏感的；在参数后加上“-”表示该参数无效；各个参数值选项<br />有“*”的表示为该参数的默认值；可以使用页右上角的“Reset”按钮来恢复该页的所有默认设置。<br /><br /><br />　　其它一些参数设置<br /><br />　　1) Project-&gt;Settings-&gt;General，可以设置连接MFC库的方式（静态或动态）。如果是动态连<br />接，在你的软件发布时不要忘了带上MFC的DLL。<br /><br />　　2) Project-&gt;Settings-&gt;Debug，可以设置调试时运行的可执行文件，以及命令行参数等。<br /><br />　　3) Project-&gt;Settings-&gt;Custom Build，可以设置编译/连接成功后自动执行一些操作。比较有<br />用的是，写COM时希望VC对编译通过的COM文件自动注册，可以如下设置：<br /><br />　　　Description: Register COM<br /><br />　　　Commands: regsvr32 /s /c $(TargetPath) <br /><br />　　　echo regsvr32 exe.time &gt; $(TargetDir)\$(TargetName).trg<br /><br />　　　Outputs: $(TargetDir)\$(TargetName).trg<br /><br />　　4) Tools-&gt;Options-&gt;Directories，设置系统的Include、Library路径。<br /><br /><br />　　一些小窍门<br /><br />　　1) 有时候，你可能在编译的时候，计算机突然非法关机了（可能某人不小心碰了电源或你的内存不稳定等原因）。当你重启机器后打开刚才的项目，重新进行编译，发现VC会崩掉。你或许以为你的VC编译器坏了，其实不然（你试试编译其它项目，还是好的！），你只要将项目的.ncb、.opt、.aps、.clw文件以及Debug、Release目录下的所有文件都删掉，然后重新编译就行<br />了。<br /><br />　　2) 如果你想与别人共享你的源代码项目，但是把整个项目做拷贝又太大。你完全可以删掉以下文件：.dsw、.ncb、.opt、.aps、.clw、. plg文件以及Debug、Release目录下的所有文件。<br /><br /><br />　　3) 当你的Workspace中包含多个Project的时候，你可能不能直观地、一眼看出来哪个是当前项目。可以如下设置：Tools-&gt;Options-&gt;Format，然后在Category中选择Workspace window，改变其默认的字体（比如设成Fixedsys）就行了。<br /><br /><br />　　4) 如何给已有的Project改名字？将该Project关掉。然后以文本格式打开.dsp文件，替换原来的Project名字即可。<br /><br /><br />　　5) VC6对类成员的智能提示功能很有用，但有时候会失灵。你可以先关掉项目，将.clw和.ncb删掉，然后重新打开项目，点击菜单项View-&gt;ClassWizard，在弹出的对话框中按一下“Add All”按钮；重新Rebuild All。应该可以解决问题。<br /></font>
<img src ="http://www.cppblog.com/zhenyu/aggbug/5856.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-04-19 05:09 <a href="http://www.cppblog.com/zhenyu/archive/2006/04/19/5856.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>让编译器生成ASM文件及Map文件</title><link>http://www.cppblog.com/zhenyu/archive/2006/04/19/5855.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Tue, 18 Apr 2006 20:17:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/04/19/5855.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/5855.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/04/19/5855.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/5855.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/5855.html</trackback:ping><description><![CDATA[
		<pre>
				<br />
				<br />对于C++来说，几乎所有的编译器都能够生成汇编指令输出，而其它语言则不一定。<br /><br />以现在Windows平台流行的语言来说，主要是Visual C++、C++Builder和Delphi（其实本人也就熟悉这些语言 <img onmouseover="if(this.alt) this.style.cursor='pointer';" onclick="if(this.alt) window.open('http://www.cpper.com/c/images/smilies/icon_wink.gif');" alt="" src="http://www.cpper.com/c/images/smilies/icon_wink.gif" onload="if(this.width&gt;screen.width-105) {this.width=screen.width-105;this.alt='本图片已被缩小，点击查看原大小图片。';}" border="0" /> ）。对于这些语言有相应的方法来获得其汇编代码：<br /><br /><font color="#ff0000">【Visual C++】</font><br />命令行：<br /><font color="#0000ff">/FA 仅生成汇编文件<br />/FAcs 生成汇编、机器码以及源代码的对照文件<br />/FAc 生成汇编、机器码的对照文件<br />/FAs 生成汇编、源代码的对照文件<br /></font><br /><br /><br /><br /><font color="#008000">menu: project ==&gt;settings</font><font color="#008000">C/C++属性页
Category:选择Listing Files
<br />
设置listing file type为Assembly with source code
键入需输出的asm文件名xxx<br />[或直接在底下的Project Option栏内键入' <font color="#0000ff">/Fa "xxx"</font> ']<br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Link属性页
勾选Generate mapfile<br />[或直接在底下的Project Option栏内键入' <font color="#0000ff">/map:"Debug/Test.map"</font> ']

OK,工程目录下将有汇编文件xxx.asm</font><br /><br /><br /><br /><br /><br /><br /><br /><br /><font color="#ff0000">【C++Builder】</font><br />命令行：<br /><font color="#0000ff">/B 生成汇编文件，并调用汇编程序进行汇编<br />/S 生成汇编、源代码的对照文件</font><br /><br /><font color="#ff0000">【Delphi】</font><br />这件事情有点复杂，实际上Delphi并不支持汇编输出，那怎么办？<br />好在Delphi有一个功能强劲的调试程序，编译以后执行程序，设置适当的断点，通过调试器提供的反汇编功能对程序进行<br />反汇编，从而得到相应段落的汇编代码。<br /><br /><br /><br /><br /><br />这实际上是一种通用的策略，包括上述的Visual C++和C++Builder也可以用同样的方式进行。<br /><br /><br />另外一种方法就是要通过一些辅助的反汇编工具了，将这些软件生成的OBJ文件进行反汇编，从而获得相应的代码。<br />当然， 其反汇编出来的文件效果绝对赶不上这些语言开发工具自己生成的效果好，可是总还是有些用处的。<br /><br />对于早期的编译软件，例如Microsoft的FORTRAN以及编译BASIC等，这些系统都支持一种代码输出的选项，<br />能够生成.COD文件。这种文件是伪宏汇编格式的文本文件，其作用基本相当于汇编文件，只是通不过重新汇编而已，<br />然而，这种文件有时并不包含源代码行，看起来比较费劲（这主要是因为两遍编译的结果）。</pre>
<img src ="http://www.cppblog.com/zhenyu/aggbug/5855.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-04-19 04:17 <a href="http://www.cppblog.com/zhenyu/archive/2006/04/19/5855.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++ Style and Technique FAQ （中文版）------- [转贴]</title><link>http://www.cppblog.com/zhenyu/archive/2006/02/06/3089.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Mon, 06 Feb 2006 08:34:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/02/06/3089.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/3089.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/02/06/3089.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/3089.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/3089.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: C++ Style and Technique FAQ （中文版）------- &nbsp;&nbsp;C++ Style and Technique FAQ （中文版）Bjarne Stroustrup 著， 紫云英 译&nbsp;[注: 本访谈录之译文经Stroustrup博士授权。如要转载，请和我联系： zmelody@sohu.com ]&nbsp;Q...&nbsp;&nbsp;<a href='http://www.cppblog.com/zhenyu/archive/2006/02/06/3089.html'>阅读全文</a><img src ="http://www.cppblog.com/zhenyu/aggbug/3089.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-02-06 16:34 <a href="http://www.cppblog.com/zhenyu/archive/2006/02/06/3089.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C程序设计之四书五经</title><link>http://www.cppblog.com/zhenyu/archive/2006/02/06/3088.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Mon, 06 Feb 2006 07:11:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2006/02/06/3088.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/3088.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2006/02/06/3088.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/3088.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/3088.html</trackback:ping><description><![CDATA[<DIV align=left><BR>个人认为C语言而言从入门开始到学会利用一些C语言的高级应用有二本书是很值得推荐的<BR>一本不用说大家都知道《C程序设计》－－老谭的，用于入门，<BR>另一本是 C PRIMER PLUS第五版根据最新C99而著，并比较系统的讲述了一些常规的书<BR>不会涉及的变长数组，可变量函数，位域运算等普通用户不会涉及却非常好用的东西，<BR>相信看过这本书的人，绝对不会在项目开发中，仅仅是堆代码，从而写出一大堆，不可维护，<BR>不可扩展，冗长低效的垃圾代码来。<BR>除了对编程语言要有深入的理解外，对数据构的认识，对编程风格的重要性有深刻的认识，<BR>对于写出易读，高效，可维护的好代码都是缺一不可。<BR><BR>相信真正做过几十个文件，3－4万行代码的软件的人都会深感信息隐藏，数据封装，对面向对象<BR>的编程方法的追求，可惜C语言不是C++不支持面向对象的编程方法，但是我们又真的有这样的<BR>需求，怎么办？可以看看一本书《Object-oriented Programming with ANSI - C》相信这本书会给大家带来帮助，当然看此书前需要对C++的特性有一定的理解才行的<BR><BR>清单：《C程序设计》<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;《C Primer Plus －5th Edition》<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;《C++ How to Program Second Edition》<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;《Object-oriented Programming with ANSI - C》<BR><BR>C程序设计之四书五经 <BR><BR>引言 <BR><BR>自从Dennis M.Ritchie于1973年设计并实现C语言以来，计算机程序设计领域已经发生了巨大的变化。以C语言为根基的C++、Java和C#等面向对象语言相继诞生，并在各自领域大获成功。今天，C及其后裔几乎统治了计算机程序设计世界。可以这么说，C语言的诞生是现代程序语言革命的起点，它改变了程序设计语言发展的轨迹，是程序设计语言发展史中的一个里程碑。 <BR><BR>然而，C并不仅仅是其他语言的起点和基础，否则它早已成为程序设计语言发展过程中又一个被遗弃者。和当初发明时一样，C语言今天依然至关重要。它的表达力、效率、简练、紧凑、对机器的最终控制以及跨平台的高度移植性，使其在系统编程、嵌入式编程等领域一直占据着统治地位，而C99标准的制订则再一次使C语言焕发出新的活力。下文介绍C程序设计领域中的几本好书，其中一些堪称经典。 <BR><BR>1. Brian W.Kernighan, Dennis M.Ritchie，《C程序设计语言》，机械工业出版社 <BR><BR>这是迄今为止在所有程序设计语言书籍中最广受尊敬的一部经典，是任何一名C程序员的必读之作。因为出自C语言的设计者Dennis M．Ritchie和著名的计算机科学家Brian W．Kernighan之手，它被昵称为“K&amp;R C”。是它首先引入了“Hello World!”程序，这个程序几乎成了后来任何一本入门性程序设计语言书籍中的第一个例子。 <BR><BR>如同C语言本身简洁紧凑而极具威力一样，这本书轻薄短小而极富张力。通过简洁的描述和典型的示例，它全面、系统、准确地讲述了C语言的各个特性以及C程序设计的基本方法，内容涵盖基本概念、类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、UNIX系统接口以及标准库等内容。 <BR><BR>简洁清晰是这本书最大的特色。这本小书可以教给你许多比它厚几倍的“大部头”的知识。我认为那些动辄洋洋洒洒拼凑出好几百页乃至上千页的技术作者应该好好向K&amp;R学一学。对于中、高级程序员而言，如果希望迅速获得C语言的严肃知识而又不愿意多花费哪怕一丁点时间，这本书就是首选。 <BR><BR>顺便说一句，这本书的索引制作非常出色，极具实用价值，这可能首先要归功于正文部分的简明扼要。此外，尽管它看上去很像一本教程，但其实更是一本写给专业程序员的指南。如果你不具备任何其他语言程序设计背景或基本的C语言知识，这本书也许并不适合用作你的C语言启蒙读物。 <BR><BR>2. Perter Van Der LinDen，《C专家编程》，人民邮电出版社 <BR><BR>C语言是严肃的程序员语言，但这并不意味着C语言书籍必须板着面孔说教。在这本被C程序员昵称为“鱼书”（封面上有一条“丑陋的”腔棘鱼）的著作中，作为SUN公司编译器和操作系统核心开发组成员之一，Peter淋漓尽致地展示了其深厚的技术沉淀、丰富的项目经验、高超的写作技巧以及招牌式的幽默。在这部作品中，作者以流畅的文字、诙谐的笔法将逸闻典故、智慧和幽默自然地融入技术描述中，读来宛若一本小说，极富趣味。 <BR><BR>本书讲述了C语言的历史、语言特性、声明、数组、指针、连接、运行时以及内存使用等知识，揭示了C语言中许多隐晦之处，尤其深入解析了声明、数组和指针、内存使用等方面的细节。要想成为一名专家级C程序员，这些内容都是必须掌握的。和其他满是抽象例子的C语言书籍不同，这本书充满了大量的来自真实世界的C程序设计实例，它们对C程序员具有很高的参照价值。另外，每一章都以极富趣味的“轻松一下”收尾，而附录A“程序员工作面试的秘密”则是任何语言的程序员在应聘工作前增强自信的好材料。 <BR><BR>我怀疑真正的C专家可能用不着看这本书 - 从内容到组织方式到行文风格都决定了这是一本轻松愉快的“从菜鸟到高手”的进阶读本，所以，它理应拥有更广泛的读者群。初级程序员往往更需要热情的鼓励，在阅读这本书的过程中，你定会深深地被作者对编程的激情所感染。 <BR><BR>世间并无完美。我认为这本书的缺陷在于，和大多数平庸的C语言书籍一样，它画蛇添足地加入了一章关于C++的描述。在今天看来，这个描述既不全面也有失公允。不过，鉴于作者是在1994年从一名C程序员的角度去观察C++，这一点也就不足为奇了。 <BR><BR>3. Samuel P. Harbison, Guy L. Steele，《C语言参考手册（第五版）》（影印版），人民邮电出版社 <BR><BR>在C语言参考手册类书籍里，Samuel P. Harbison 和Guy L. Steele合著的《C: A Reference Manual》是非常出色的一本。这本手册的第五版新增了对C99标准的介绍，以便满足新时期C语言学习的需要。全书共分为两大部分，第一部分专注于C语言特性，第二部分则全面讨论了C标准库。本书涵盖C99、C89、传统的C、所有版本的C运行库以及编写与C++兼容的C代码等一切知识。 <BR><BR>这本手册只是中等厚度，但它比“比它更厚”的其他参考手册更清晰地描述了C语言的现在和过去的方方面面。整本手册技术细节描述精确，组织条理清楚，内容完备详尽而又简明扼要。可以这么说，它在广度、深度和精度方面都是出类拔萃的。对于中、高级C程序员而言，这本手册值得常备案头，它几乎肯定要比K&amp;R的著作使用频率更高。 <BR><BR>2004年2月1日补充：我手头有这本书的中文版：《C语言参考手册》（机械工业出版社出版）。它在很大程度上减轻了我的查阅负担，不过偶尔也增加了理解上的困难。 <BR><BR>4. David Hanson，《C语言接口与实现：创建可重用软件的技术》，机械工业出版社 <BR><BR>C语言能够历经三十多年而不衰，一个重要的原因在于它的适应能力。在这“复用”、“面向对象”、“组件”、“异常处理”等先进机制漫天飞舞的年代，C语言仍然能够凭借它小而优雅的语言特性，在相当程度上满足现代软件体系架构提出的要求。只不过，想要达到这个程度，必须要在C的应用功力上达到最高层次。在嵌入式、系统软件以及对性能要求极高的系统开发中，开发人员必须达到这样的层次，熟练掌握C语言的高级特性，才能够同时满足效率和灵活性、复用性的要求。可惜，虽然C语言技术图书汗牛充栋，但是关注这个峰顶之域的作品却是屈指可数。David Hanson的《C Interfaces and Implementations》就是个中翘楚。 <BR><BR>David Hanson是业内大名鼎鼎的自由编译器lcc的合作者。在这个项目中，他负责提供高度可复用的基础架构。在不断的实践中，他完全使用ANSI C形成了一整套可复用组件库。这套组件库架构清晰，性能优异，而且提供了很多高级的特性，比如类Win32 SEH的异常处理机制，可移植的线程库，高性能的内存池，丰富的可复用数据结构组件。David Hanson把他在创作这些组件的过程中所积累的心得以及对其源码的精致剖析原原本本地写在了这本书里。这样的著作，当然堪称C语言领域里的铭心绝品。难怪已故著名技术作家Richard Stevens对此书赞不绝口，他说：“这本书中的技术，对于大部分C程序员来说，已经遗忘得太久了。”对于希望能在C语言应用上达到最高层次的核心程序员而言，这本书是难得的必读之作。 <BR><BR>其他 <BR><BR>除了以上四本书以外，我还乐意推荐Andrew Koenig的著作《C陷阱和缺陷》（人民邮电出版社）和Deitel父子合著的《C How to Program》两本书。 <BR><BR>Andrew Koenig是世界上屈指可数的C++专家，他的这本书可能是最薄的一本C语言经典。它简明扼要地讲述了C程序设计中的陷阱和缺陷，包括词法陷阱、语法陷阱、语义陷阱、连接、库函数、预处理器以及可移植性缺陷等，最后一章还给出了关于如何减少程序错误的建议以及前面各章问题的参考答案。尽管这个小册子成书于C89标准制定之前，然而，即使到了C99早已颁布的今天，书中提到的大多数陷阱和缺陷一如十五年前那样使我们警醒。 <BR><BR>Deitel父子合著的《C How to Program》一直是非常好的C语言入门教程，我手头的中译本名为《C程序设计教程》（机械工业出版社出版，原书第二版）。除了对技术的正规描述（辅以许多简明扼要的例子）外，每一章后面都带有小结、术语、常见的程序设计错误、良好的程序设计习惯、性能忠告、可移植性忠告、软件工程评述、自我测验练习及答案等。整书内容清晰，组织良好，易于阅读和理解。值得一提的是，有许多入门书读完一遍即可扔掉，而这一本是个例外。<BR><BR><BR><BR>谢谢，不过不可否认，以下这些书用于入门，对入门的要求未免稍稍高了一点。事实上在开发过程中<BR>用得最多的还是基本的一些知识。<BR><BR>1. Brian W.Kernighan, Dennis M.Ritchie，《C程序设计语言》，机械工业出版社 <BR>2. Perter Van Der LinDen，《C专家编程》，人民邮电出版社 <BR>3. Samuel P. Harbison, Guy L. Steele，《C语言参考手册（第五版）》（影印版），人民邮电出版社 <BR>4. David Hanson，《C语言接口与实现：创建可重用软件的技术》，机械工业出版社 <BR>除了以上四本书以外，我还乐意推荐Andrew Koenig的著作《C陷阱和缺陷》（人民邮电出版社）和Deitel父子合著的《C How to Program》两本书。 <BR><BR>Deitel父子合著的《C How to Program》一直是非常好的C语言入门教程，我手头的中译本名为《C程序设计教程》（机械工业出版社出版，原书第二版）。除了对技术的正规描述（辅以许多简明扼要的例子）外，每一章后面都带有小结、术语、常见的程序设计错误、良好的程序设计习惯、性能忠告、可移植性忠告、软件工程评述、自我测验练习及答案等。整书内容清晰，组织良好，易于阅读和理解。值得一提的是，有许多入门书读完一遍即可扔掉，而这一本是个例外。</DIV><img src ="http://www.cppblog.com/zhenyu/aggbug/3088.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2006-02-06 15:11 <a href="http://www.cppblog.com/zhenyu/archive/2006/02/06/3088.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Programmming in Lua学习笔记(边学边更新ing。。。)</title><link>http://www.cppblog.com/zhenyu/archive/2005/11/17/1167.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Wed, 16 Nov 2005 18:30:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2005/11/17/1167.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/1167.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2005/11/17/1167.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/1167.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/1167.html</trackback:ping><description><![CDATA[<H1 align=center><FONT color=#0000ff><U>Programmming in Lua学习笔记</U></FONT></H1>
<P align=center>author:阵雨 2005年11月17日2:34:46</P>
<H1 align=left><FONT face=Tahoma><FONT color=#0000ff size=3>第0章 序言</FONT><BR></FONT></H1><FONT color=#0000ff>
<P><FONT face=Tahoma>
<HR>
</FONT>
<P></P>
<P></FONT><FONT face=Tahoma>Lua所提供的机制是C不善于的：高级语言、动态结构、简洁，易于测试和调试。<BR>正因为如此，Lua具有良好的安全保证，自动内存管理，简便的字符串处理功能<BR>以及其他动态数据的改变。<BR>Lua具有可扩展、简单、高效、跨平台的特点。</FONT></P>
<P><FONT face=Tahoma><FONT color=#0000ff><STRONG>第 1 章&nbsp; 起点</STRONG></FONT> 
<HR>
一个Chunk可以是一个语句，也可以是一系列语句的组合，还可以是函数，Chunk可以很大，在Lua中几个Mbyte的Chunk<BR>是很常见的。</FONT> 
<P></P>
<P><FONT face=Tahoma>全局变量不需要声明，给一个变量赋值后即创建了这个全局变量，访问一个没有初始值的全局<BR>变量也不会出错，只不过的得到的结果是:nil。<BR>如果想删除一个全局变量，只需要将变量赋值为 nil.<BR></FONT></P>
<P><FONT color=#0000ff><STRONG><BR><FONT face=Tahoma>第 2 章 类型和值</FONT></STRONG></FONT><FONT face=Tahoma> 
<HR>
每个语句结尾的分号 <FONT color=#0000ff>';'</FONT> 是可选的，但是如果同一行有多个语句最好用' ; '来将其隔开</FONT> 
<P></P>
<P><FONT face=Tahoma>Lua是动态类型语言，变量不要类型定义。lua中有8种基本类型分别为：</FONT></P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">nil&nbsp;,boolean&nbsp;,number,&nbsp;string,userdata,function,thread,table</SPAN></FONT></DIV>
<P><FONT face=Tahoma>变量没有预定义的类型，每一个变量都可能包含任一种类型的值，例如：</FONT></P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #0000ff">print</SPAN><SPAN style="COLOR: #000000">(type(a))&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #000000">--&gt;</SPAN><SPAN style="COLOR: #000000">nil&nbsp;(</SPAN><SPAN style="COLOR: #800000">'</SPAN><SPAN style="COLOR: #800000">a</SPAN><SPAN style="COLOR: #800000">'</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">is</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #0000ff">not</SPAN></FONT><FONT face=Tahoma><SPAN style="COLOR: #000000">&nbsp;initialized)<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>a</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000">10</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top></FONT></SPAN><FONT face=Tahoma><SPAN style="COLOR: #0000ff">print</SPAN><SPAN style="COLOR: #000000">(type(a))&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #000000">--&gt;</SPAN></FONT><FONT face=Tahoma><SPAN style="COLOR: #000000">number<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>a</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #800000">"</SPAN><SPAN style="COLOR: #800000">a&nbsp;string</SPAN><SPAN style="COLOR: #800000">"</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top></FONT></SPAN><FONT face=Tahoma><SPAN style="COLOR: #0000ff">print</SPAN><SPAN style="COLOR: #000000">(type(a))&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #000000">--&gt;</SPAN></FONT><FONT face=Tahoma><SPAN style="COLOR: #000000">string<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>a</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #0000ff">print</SPAN><SPAN style="COLOR: #000000">&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #000000">--&gt;</SPAN><SPAN style="COLOR: #000000">yes&nbsp;,this&nbsp;</SPAN><SPAN style="COLOR: #0000ff">is</SPAN></FONT><FONT face=Tahoma><SPAN style="COLOR: #000000">&nbsp;valid!<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>a(type(a))&nbsp;</SPAN><SPAN style="COLOR: #000000">--&gt;</SPAN><SPAN style="COLOR: #000000">function</SPAN></FONT></DIV>
<P><FONT face=Tahoma>我们可以使用function像使用其它值一样使用</FONT></P>
<P><FONT face=Tahoma>Nil&nbsp;<BR>Lua中特殊的类型，它只有一个值:nil,一个全局变量没有被赋值以前默认值为nil</FONT></P>
<P><FONT face=Tahoma>Booleans 两个取值 <FONT color=#0000ff>false 和 true</FONT> ,但要注意Lua中 “所有的值”都可以用作为条件，在控制结构的<BR>条件中除了<FONT color=#0000ff>false 和 nil</FONT> 为假，其它值都为真，所以Lua认为<FONT color=#0000ff>0和空串</FONT>都是真.</FONT></P>
<P><FONT face=Tahoma>Lua的字符串可以包含任何数值的字符，包括嵌入的0，这意味着你可以存储任意的二进制数据在一个字符串里面。<BR>字符串是不可以修改的，你可以创建一个新的变量来存储你要的字符串<BR>Lua可以高效率的处理长字符串，1M大小的string在Lua中是常见的。<BR>可以用单引号或者双引号来表示字符串 <FONT color=#0000ff>a="a lien" ,b='another line'</FONT><BR>转义字符与C语言相同。<BR>可以在字符串中使用<FONT color=#0000ff>\ddd </FONT>(ddd为三位十进制数字) 方式来表示字母<BR>还可以使用<FONT color=#0000ff>[[ ...]]</FONT>来表示字符串，这种形式的字符串可以包含多行，也可以嵌套，<BR>而且不会解释转移字符，如果第一个字符是换行符会被自动忽略掉，这种形式的字符串<BR>用来包含一段代码是非常方便的<BR>运行时，Lua会自动在<FONT color=#0000ff>string</FONT>和<FONT color=#0000ff>numbers</FONT>之间自动进行类型转换，当一个字符串使用算术<BR>操作符时，string会被转换成数字<BR>尽管字符串和数字可以自动转换，但是两者是不同的，比如 </FONT><FONT face=Tahoma><FONT color=#0000ff>10 ~= "10".<BR></FONT><BR>Lua通过引用比较tables userdata functions ,也就是说当且仅当两者表示同一个对象时<BR>他们才相同，nil只和nil相等。如果两个值类型不同，Lua则认为他们不同</FONT></P>
<P><BR><FONT face=Tahoma><FONT color=#0000ff><STRONG>第 3 章 表达式<BR>
<HR>
</STRONG></FONT>and 和 or 的运算结果不是true或者false,而是和它的两个操作数相关.<BR>a and b&nbsp; a or b&nbsp;&nbsp;按照C语言的逻辑运算顺序计算，a、b两个表达式，计算到哪一个就返回哪一个的值<BR>例如：a &amp;&amp; b&nbsp;如果 a为false,那么无须计算b 即可知表达式为false<BR>所以&nbsp;a and b的结果是如果a为false,则返回a,否则返回b</FONT> 
<P></P>
<P><FONT face=Tahoma>一个很实用的技巧，<FONT color=#0000ff>x = x or v</FONT><BR>C语言中的 <FONT color=#0000ff>a ? b:c</FONT>&nbsp;等价于Lua中的&nbsp;<FONT color=#0000ff>(a and b) or c</FONT></FONT></P>
<P><FONT face=Tahoma>运算符的优先级(可惜没有位运算<IMG height=19 src="http://www.cppblog.com/Emoticons/cry_smile.gif" width=19 border=0>)：</FONT></P>
<DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">^</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</FONT></SPAN><FONT face=Tahoma><SPAN style="COLOR: #0000ff">not</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">-</SPAN></FONT><FONT face=Tahoma><SPAN style="COLOR: #000000">(unary)<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">/</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</FONT></SPAN><FONT face=Tahoma><SPAN style="COLOR: #000000">+</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">-</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;..<BR><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</FONT></SPAN><FONT face=Tahoma><SPAN style="COLOR: #000000">&lt;</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">&gt;</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">&lt;=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">&gt;=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">~=</SPAN><SPAN style="COLOR: #000000">&nbsp;</SPAN><SPAN style="COLOR: #000000">==</SPAN></FONT><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</FONT></SPAN><SPAN style="COLOR: #0000ff"><FONT face=Tahoma>and</FONT></SPAN><SPAN style="COLOR: #000000"><BR><FONT face=Tahoma><IMG src="http://www.cppblog.com/images/OutliningIndicators/None.gif" align=top>&nbsp;</FONT></SPAN><SPAN style="COLOR: #0000ff"><FONT face=Tahoma>or</FONT></SPAN></DIV>
<P><FONT face=Tahoma>除了<FONT color=#0000ff>^和 ..</FONT> 之外所有的二元运算符都是左连接的。</FONT></P>
<P><FONT face=Tahoma>Lua中的表可以用字符串和数字作为<FONT color=#0000ff>index,如tt={name="table",["size"]=2，[3]="number"}</FONT><BR>如果不使用数字表达式，Lua则自动从数字 1 开始作为index,如<FONT color=#0000ff>tt={"table",2}</FONT> 那么<FONT color=#0000ff>tt[1]=="table,tt[2]==2</FONT><BR>在构造函数中,域分隔符逗号(,)是可以用分号(;)替代的，通常我们用分号来分割不同类型的表元素。如：<BR><FONT color=#0000ff>tt={x=10,y=45 ; "one","two","three"}<BR></FONT><FONT color=#ff0000>The syntax var.NAME is just syntactic sugar for var["NAME"]:<BR></FONT></FONT></P><img src ="http://www.cppblog.com/zhenyu/aggbug/1167.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2005-11-17 02:30 <a href="http://www.cppblog.com/zhenyu/archive/2005/11/17/1167.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Lua实现的 位运算 模块</title><link>http://www.cppblog.com/zhenyu/archive/2005/11/11/1050.html</link><dc:creator>阵雨</dc:creator><author>阵雨</author><pubDate>Thu, 10 Nov 2005 19:08:00 GMT</pubDate><guid>http://www.cppblog.com/zhenyu/archive/2005/11/11/1050.html</guid><wfw:comment>http://www.cppblog.com/zhenyu/comments/1050.html</wfw:comment><comments>http://www.cppblog.com/zhenyu/archive/2005/11/11/1050.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cppblog.com/zhenyu/comments/commentRss/1050.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/zhenyu/services/trackbacks/1050.html</trackback:ping><description><![CDATA[<FONT face="Courier New"><FONT color=#008000>--[[<BR>Description:<BR>&nbsp;&nbsp;&nbsp;&nbsp;FileName:bit.lua<BR>&nbsp;&nbsp;&nbsp;&nbsp;This&nbsp;module&nbsp;provides&nbsp;a&nbsp;selection&nbsp;of&nbsp;bitwise&nbsp;operations.<BR>History:<BR>&nbsp;&nbsp;&nbsp;&nbsp;Initial&nbsp;version&nbsp;created&nbsp;by&nbsp;&nbsp;阵雨&nbsp;2005-11-10.<BR>Notes:<BR>&nbsp;&nbsp;....<BR>]]<BR>--[[{2147483648,1073741824,536870912,268435456,134217728,67108864,33554432,16777216,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8388608,4194304,2097152,1048576,524288,262144,131072,65536,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8,4,2,1}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]]<BR></FONT><BR><BR>bit={data32={}}<BR><FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;bit.data32[i]=2^(32-i)<BR><FONT color=#0000ff>end</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;bit:d2b(arg)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;tr={}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;arg&nbsp;&gt;=&nbsp;self.data32[i]&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tr[i]=1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arg=arg-self.data32[i]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>else</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tr[i]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;&nbsp;tr<BR><FONT color=#0000ff>end&nbsp;&nbsp;&nbsp;</FONT><FONT color=#008000>--bit:d2b</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:b2d(arg)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;nr=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;arg[i]&nbsp;==1&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nr=nr+2^(32-i)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;nr<BR><FONT color=#0000ff>end</FONT>&nbsp;&nbsp;&nbsp;<FONT color=#008000>--bit:b2d</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_xor(a,b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op2=self:d2b(b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r={}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;op1[i]==op2[i]&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>else</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:xor</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_and(a,b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op2=self:d2b(b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r={}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;op1[i]==1&nbsp;<FONT color=#0000ff>and</FONT>&nbsp;op2[i]==1&nbsp;&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>else</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:_and</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_or(a,b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op2=self:d2b(b)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r={}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;&nbsp;op1[i]==1&nbsp;<FONT color=#0000ff>or</FONT>&nbsp;&nbsp;&nbsp;op2[i]==1&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>else</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:_or</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_not(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r={}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;&nbsp;op1[i]==1&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>else</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;r[i]=1<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:_not</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_rshift(a,n)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r=self:d2b(0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;n&nbsp;&lt;&nbsp;32&nbsp;<FONT color=#0000ff>and</FONT>&nbsp;n&nbsp;&gt;&nbsp;0&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,n&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=31,1,-1&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;op1[i+1]=op1[i]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;op1[1]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;r=op1<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:_rshift</FONT><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:_lshift(a,n)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;op1=self:d2b(a)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;r=self:d2b(0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>if</FONT>&nbsp;n&nbsp;&lt;&nbsp;32&nbsp;<FONT color=#0000ff>and</FONT>&nbsp;n&nbsp;&gt;&nbsp;0&nbsp;<FONT color=#0000ff>then</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,n&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,31&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;op1[i]=op1[i+1]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;op1[32]=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;r=op1<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>return</FONT>&nbsp;&nbsp;self:b2d(r)<BR><FONT color=#0000ff>end</FONT>&nbsp;<FONT color=#008000>--bit:_lshift</FONT><BR><BR><BR><FONT color=#0000ff>function</FONT>&nbsp;&nbsp;&nbsp;&nbsp;bit:print(ta)<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>local</FONT>&nbsp;&nbsp;&nbsp;sr=<FONT color=#ff00ff>""</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>for</FONT>&nbsp;i=1,32&nbsp;<FONT color=#0000ff>do</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sr=sr..ta[i]<BR>&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#0000ff>end</FONT><BR>&nbsp;&nbsp;&nbsp;&nbsp;print(sr)<BR><FONT color=#0000ff>end</FONT><BR><BR>bs=bit:d2b(7)<BR>bit:print(bs)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><FONT color=#008000>--&gt;00000000000000000000000000000111</FONT><BR>bit:print(bit:d2b(bit:_not(7)))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><FONT color=#008000><FONT color=#000000>--</FONT>&gt;11111111111111111111111111111000</FONT><BR>bit:print(bit:d2b(bit:_rshift(7,2)))&nbsp;&nbsp;&nbsp;&nbsp;<BR><FONT color=#008000><FONT color=#000000>--</FONT>&gt;00000000000000000000000000000001<BR></FONT>bit:print(bit:d2b(bit:_lshift(7,2)))&nbsp;&nbsp;&nbsp;&nbsp;<BR><FONT color=#008000><FONT color=#000000>--</FONT>&gt;00000000000000000000000000011100</FONT><BR>print(bit:b2d(bs)) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#008000>--&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7</FONT><BR>print(bit:_xor(7,2))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#008000>--&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5</FONT><BR>print(bit:_and(7,4))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#008000>--&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4</FONT><BR>print(bit:_or(5,2))&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT color=#008000>--&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7</FONT><BR><BR><BR><FONT style="BACKGROUND-COLOR: #ffffff" color=#008000>--end&nbsp;of&nbsp;bit.lua</FONT></FONT><img src ="http://www.cppblog.com/zhenyu/aggbug/1050.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhenyu/" target="_blank">阵雨</a> 2005-11-11 03:08 <a href="http://www.cppblog.com/zhenyu/archive/2005/11/11/1050.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>