发信人: josephpei (Nikon,感动常在), 信区: CProgramming
标 题: C语言中史上最愚蠢的Bug(zz)
发信站: 水木社区 (Fri Aug 26 15:59:46 2011), 站内http://coolshell.cn/articles/5388.html本文来自"The most stupid C bug
ever",很有意思,分享给大家。我相信这样的bug,就算你是高手你也会犯的。你来看看作者犯的这个Bug吧。。首先,作者想用一段程序来创建一个文件,如果有文件名的话,就创建真正的文件,如果没有的话,就调用?tmpfile()?创建临时文件。他这段程序就是HTTP下载的C程序。code==200就是HTTP的返回码。else if (code == 200) { // Downloading whole file
/* Write new file (plus allow reading once we finish) */
g = fname ? fopen(fname, "w+") : tmpfile();
}但是这个程序,只能在Unix/Linux下工作,因为 Microsoft 的?tmpfile()的实现?居然选择了 C:
作为临时文件的存放目录,这对于那些没有管理员权限的人来说就出大问题了,在Windows
7下,就算你有管理员权限也会有问题。所以,上面的程序在Windows平台下需要用不同的方式来处理,不能直接使用Windows的tmpfile()函数。于是作者就先把这个问题记下来,在注释中写下了FIXME:else if (code == 200) { // Downloading whole file
/* Write new file (plus allow reading once we finish) */ // FIXME Win32 native version fails here because
// Microsoft's version of tmpfile() creates the file in C:
g = fname ? fopen(fname, "w+") : tmpfile();
}然后,作者觉得需要写一个跨平台的编译:FILE * tmpfile ( void ) {
#ifndef _WIN32
return tmpfile();
#else
//code for Windows;
Category: 未分类
七种武器:怀念键盘
七种武器:怀念键盘用计算机的人,把工具视为武器。所以,我们有很多武器。有些,是花哨而炫目
的,有些是沉重得没有声音的。键盘,是一种武器。老家伙的武器。时代发展,老家伙们不断地落后于时代,看这个也不惯,那个也不惯。最后,就
变成了一群被时代淘汰的人。我也会是其中之一。典典同学不知道从哪拍了张mazhazi的照片,放在人人网上,叫嚣着让大家认那
是啥。mazhazi是一种类似于蚱蜢的昆虫,就是"只恐双溪舴艋舟载不动许多愁"的那个。
mazhazi和蚱蜢之间的区别我就不说了,这不是重点。重点是我答了那是mazhazi
以后,典典同学说,"老头不许说话。"恩,你,还有你,你们也有一天会变成老头的啊。老头们会认为最佳的输入工具是键盘,而不是鼠标。我们大部分时间手指都是放
在键盘的基本键位上,而不是鼠标上,那很累手。而且,我们认为手放在鼠标上
仅能获取信息,而放在键盘上是为了对这个世界发出我们的声音。当然,我们也没有那种键位错误――因为打CS太多,食指不是放在F上而放在D上。键盘曾经是最常用的输入工具,那个时候鼠标20元一个,我根本就买一起。所
以,学ORCAD,一种绘电路图和仿真的软件,整个课程,我都是用键盘对付下来
的。考试的时候也没鼠标。键盘定位,真是比鼠标准确多了。我所怀念的键盘,最初的一个,很寒碜。每当同学们抱怨这所学校或学院多么糟烂,机房开放时间怎么地的时候,我就讲
讲我当年3块钱2小时机票的事。你看,我老啦,老家伙又能说些什么。其实我没讲更早的故事。我的第一个键盘,是我手工做的。当然不能接在计算
机,那时机器都放在跟保温箱似的屋子里,难得有机会碰一下。我做的键盘是木
头板上,每个键位的上面粘着海绵,海绵的顶上粘着我从计算机课本上剪下来的
键盘字母。我为我的高中能提供计算机课程而感激至今。虽然,整学期我们只编了解一元二
次方程的那个程序,BASIC,苹果II。有人说,男人总会找到一个复杂的令他向
往的东西。当时我还不知道这句话,但是我想,这个就是我想要的东西了。现在,仍能感到当时的激动。机房那美妙的塑料味。我在这个键盘上练了最初的指法。同时用来练指法的,还有英语林老师的机械打
字机。所以,我现在仍然打字很重,能把IBM笔记本敲得跟机械键盘一样响。后来,我赖吧吧地想跟一位好友的男朋友学五笔来着,自己找来了字根表啥的。
但是人家不教,那个时候计算机很贵的。机时也很贵。唉呀,往事如烟哪。现在我中文打字估计能稳定在60―80左右吧,比思维和说话慢
不少,估计比我写字略快。英文打字大约每分钟正确击键200次左右。大哥同学,每分钟300,我认为他不是
人类,平均每秒钟5次。小数字键盘,我很少见到像我一样用规范指法的,除了银行的。中指在5上,0用
拇指,回车和加号用小指。小数字键盘是打一个游戏练的。那个游戏叫做 大时代的故事,讲北伐战争、抗日
战争前、抗日战争中后期的故事。你扮演一个军阀,打别人。用小数字键盘回答
问题,把兵带到某某省吗,骑兵对坦克冲锋吗,花钱在某省发动XX运动么?历史
上的牛人们,战斗力真的很牛,甚至一直打到缅甸。抓到的将军们可以招降,再
招降,再招降,或者杀了,日本鬼子只能杀,没有招降选择。记得是汉堂的游戏,打过关以后,小数字键盘很熟了。最上排的数字键盘,一直不熟,不能盲打,所以对各种笔记本的键盘很痛恨。后
来用EMACS,慢慢习惯了,一个一个数字熟悉起来。现在大部分能够盲打了,包
括它们的上档字符。讲C++还是JAVA课的时候,同学们跟我讨论过我用键盘的利弊。有人希望我用鼠
标操作,这样他们方便记住在哪里找到编译菜单啥的。我后来没有坚持按他们的
希望去做,一则我找那些菜单挺费劲的,没太记住,二则我一直不明白这也应该
算是传授的内容么,换个界面就找不到啦?三则,我其实那个时候就眼神不太
好,看清菜单是件困难的事。就像我用WORD也全屏,不是显摆或另类,而是我长
期用15英寸球面显示器,实在看不清那些按钮,屏幕上也没那么大地方。说到这里,我想起了用着大显示器,却只有巴掌大的地方是代码的孩子们。我真是老啦。最后一件跟我老了有关的键盘的故事。我痛恨加工过的那些键盘。国人制造商们
特有这个瘾,在键盘上加些没用的或者非常不常用的东西。比如待机按钮啦,关
闭按钮啦。他们在那里污染键盘布局空间不说,还特别容易在按光标移动键的时候按上。为
此,我砸碎一个,而且再也不用这种垃圾了。键盘,就像你身边那个最可靠的人。古龙小说里写着的,某坏BOSS被打了,床一
翻个就没影了。话说他的床下面24*7有个家伙在那里划着艘船等着。键盘就是这样,那些按键一直在那里。你可能已经忘了VC编译的快键盘是什么,
但是你的手指还记着。我们,有一些人,可以永远记着,有另一些或另一个人,一直守候。无论鼠标、
语音输入、脑电波,无论有什么样的变化,他就沉睡在那里,当你需要的时候,
给你确定的支持。你甚至不必看你的手指,就能知道他的动作。因为他从不改变。所以,我想说的武器不是键盘,而是可靠。--
Sincerely,
YANG Guifu
School of Computer Science and Information Technology
Northeast Normal University
Changchun, P.R.China
----
杨贵福
无不大工。
大多数人从未听说过CTRL+F
Sent to you by Young via Google Reader:
Google科学家Dan Russell称,在他的研究中有90%的人不知道使用快捷键CTRL/Command + F去寻找文档或网页中的单词。 Russell研究了数千人如何搜索资料。他说,在做研究时他已经记不清有多少小时坐在别人的房子内,看着对方阅读一个长长的文档寻找所需要的资料。他在最后会忍不住提醒,有一个技巧可以帮助快速搜索信息,经常研究对象听过后会感慨万分的说"无法想象自己浪费了多少生命"。《大西洋》的资深编辑Alexis Madrigal认为,应该教育数字时代的人们掌握类似的技巧:如CTRL+C和CTRL+V复制粘贴,CTRL+A全选内容,CTRL+ F搜索关键词,CTRL+Z撤销上次操作,CTRL+L选择网址...
Things you can do from here:
- Subscribe to Solidot using Google Reader
- Get started using Google Reader to easily keep up with all your favorite sites
计数
英文月份的起源
标 题: 男子盗窃后逃跑10秒多跑百余米 监控仅留白影
发信人: iloser (lost in life), 信区: Joke
标 题: 男子盗窃后逃跑10秒多跑百余米 监控仅留白影
发信站: 水木社区 (Mon Aug 15 20:59:11 2011), 站内http://www.sina.com.cn 2011年08月15日13:04 大河网-河南商报
小偷快速逃跑后,扔下了自己的电动车 河南商报记者 王春胜/摄
河南商报记者 李政 记得博尔特吗?北京奥运会田径100米决赛,他用了9.69秒夺冠。昨日凌晨,郑州街头一名偷电瓶的男子被发现后,拔腿就跑,监控显示,百余米路程,他仅用了10秒多,以至于在监控屏上只留下一道白影。 下手 1分钟内,偷走4个电瓶 郑州人民路丹尼斯商场路边,骑电动车的白衣男子停车了,点上一支烟,吸了一口,朝四周张望着。 时间是凌晨1点45分,路上没什么人。男子身旁停着一辆电动车,3分钟后,他蹲在电动车旁边,用工具撬开车座,拎出4个电瓶,放在自己的电动车上,偷盗过程不超过1分钟。 不远处的监控室内,人民路巡防队员通过监控摄像头看到了男子偷盗全过程。 男子并不知道自己已经暴露,跨上电动车,一溜烟跑了。 逃窜 被撞倒后拔腿就跑 100多米仅用10秒多 男子沿人民路东侧人行道由南向北逃窜,与此同时,巡防队员董松洲、刘洪骑电动车由北向南堵截。 1点50分,监控录像显示,两名巡防队员与男子"狭路相逢"。巡防队员试图用两辆电动车从两侧夹击男子,但男子灵巧地绕过董松洲,眼看男子就要逃走,刘洪用另一辆车撞击男子的电动车,两人同时倒地。 巡防队员用"不可思议"描述接下来的10秒。 电动车不要了,男子先向北跑了30多米,横穿人民路后,穿过人民路金水河桥,向西拐进河边公园,消失。 录像显示,从1点51分13秒到23秒,男子逃窜的整个过程仅10秒多。 市民 偷盗屈才了,去奥运会吧 虽然没追上男子,但被盗的四个电瓶找到了主人,小偷的电动车也被巡防队员扣下。 "从没见过跑这么快的小偷,跟博尔特似的。"没追上男子,刘洪自叹不如。他回忆,男子当时穿的还是一双皮鞋。 而录像显示,男子逃窜时,在监控屏上只留下一道白影。 据河南商报记者实地查看,算上起初逃窜的30多米,横穿人民路十几米,穿过金水河桥以及向西逃窜约50米,加起来有百余米。 市民李先生称,"飞人"博尔特百米才跑9.69秒,他戏称:"跑这么快,偷盗电瓶太屈才,不要偷鸡摸狗,去参加奥运会为国争光吧。"
研究称开放式办公布局对大脑有害 转载
如果这是真的,那么说明,开放办公室编码和办公,是多么鼠目寸光的省钱行为.
研究称开放式办公布局对大脑有害
http://science.solidot.org/article.pl?sid=11/08/12/1014209&from=rss
by blackhat
你是否认为在办公室里无法集中注意力?那就谴责办公室结构吧。一项研究发现开放式办公布局对大脑有害。
研究人员发现,噪音不断和隐私缺乏会干扰大脑活动,使注意力无法集中。由于职员对周围环境感到不舒服,他们的幸福度下降32%,生产力下降15%。神经学家Jack
Lewis说,开放式办公原本设计让雇员之间自由移动和交流,促进创造性思维,寻找出更好的问题解决方法。但它没有考虑到背景声音对大脑的影响和干扰。心理学家Craig
Knight博士说,开放式办公没有为私人空间留下多少地方,创造个人空间和舒适环境有助于提高生产力。
pics
牙疼时读隋唐英雄们
牙疼时读隋唐英雄们这篇也是关于工程的,最终所有的感想都会是关于工程的。因为你看,我是个工
程师,你还指望我能说些别的什么。牙疼,治了一个多月了。或者,更严格的说,我这辈子都在治牙,现在四颗恒
牙,就是被指望用一辈子的那四颗,上面各有钻了一个洞,然后堵上了。如果你不能想像钻的时候和所谓根管治疗的时候有多疼,我给你讲两件事。其一。在那万恶的旧社会,我绝无可能成为优秀的地下党员。因为敌人把刑具放
在我的面前,不必讲怎么作用于我的肉体,单是看那些小钻头小钢丝锃明瓦亮地
呆在白布上,我就会全招。问啥说啥。更不说把这些工具真正用在我的身上。那种疼痛,我想是人的意志不能控制的。疼痛让我浑身都不自主地颤抖,从腹肌
到舌头。连说话都是断续的,"别……钻……了"其二。高中的时候,我去看牙。那小伙大夫伸啥玩艺一捅,"是这颗吗?"我原来
半躺在那里,他这一下,我完全姿势不同,从半躺改为全躺,头枕在原来放屁股
的地方。我楞楞地仰望他,心想,"看来壁虎爬墙什么的还是有可能的。"他问,"疼啊。"我汗才冒出来,"你说呢。"你说呢,疼不疼。今天,终于堵上了。事实上,没治完。不止一颗,我都坚持不到医生希望的那一
刻。我不能,我的心脏也不能。注定不能成为英雄的人的共性,当回来以后咬到这颗新牙--两天以后固化--疼得
要掉眼泪的时候,我就开始看英雄的故事。不是刘胡兰黄继光的。是田中芳树先生的《中国武将列传》。题外话,我发现有些国家与咱们很不同。英国人和法国人都会以对方作为背景写
故事,英国人也会以丹麦作为背景写丹麦王子的故事,日本人有大量的以中国作
为背景的故事。咱们,据我所知,没有以别的国家为主的故事。北京人在纽约和
爱在温哥华这样的华人在外,就不算了。有谁知道的,感谢指出我的无知。我原本接受是日本人是暴露狂,就乐意写自己。现在看来,他们谁都乐意写。算
是对世界文化做贡献呢吧。题外话结束。田中芳树正讲到隋唐一代,真是英雄辈出啊。李靖遇到李世民的时候,李靖47岁,李世民17岁。17岁的李世民此前已经带兵救
过一次隋炀帝被突厥围困,因为杨广反悔了拒不奖赏来勤王的将军们,李认识到
这王朝不久矣,这时候他已经劝说老爸造反了。李靖年龄比较大了,不过此前也有传奇。他原来是著名将军韩擒虎的养子(?)和/
或外甥,这位韩将军牛到死了以后被大家尊为十殿阎王之一。李靖跟杨素讲兵
法,杨总理或者陆军元帅拍着椅子说,"这迟早是你的啊。"杨素死得早,没见到
李靖坐在那把椅子上,不过李素的老婆之一跟李靖跑了。这位老婆之一就是红拂
女。红女士的头发特长,在宾馆里梳头,被一位大侠看中了,似乎还言语调戏了
几句,基本意思是你跟我得了。结果大侠后来发现红女士的伴侣是李靖,顿时承
认自己没戏了,跟红女士结为兄妹,还留下话,你们夫妻以后有事尽管找我。这
位大侠就是虬髯客。李靖说完了。还有一位也17岁的少年,叫徐绩,也起兵反隋。因为年龄太小,不
适合当头目,就推了别人扮演头目,自己主事。他们建立的根据地名字叫瓦冈
寨,后来建了个国家叫魏。魏国有多牛,看看它的将军们就知道了,后来都挺有
名:秦琼,罗士信,单雄信,还有一个不是大将的,叫魏征。后来这群人大部分归了李世民,然后这位就领着大家去打尉迟敬德。尉迟长于马
上近战用长矛,李世民长于弓箭,他们两个后来合作,经常自己亲自去侦察。两
个人被好几千人追。到一小山包上,两个就核计,你去还是我去。于是尉迟下去
杀一阵,敌人略退,他俩再跑;再到一小山包,李世民刷刷一顿射死一群,敌人
又略退,他俩再跑。如是者三。尉迟敬德之能战,后来就和秦琼变成俩门神。这位17岁的恐惧少年后来也投了李世民,改名李世绩,或者李绩。尉迟敬德一生
后半段大部分都支持李世民,直到李世民要征高句丽(不是高丽)。李世民打了
几仗,也没征成,尉迟敬德就隐居了,不知道是不是兄弟意见不合了。只有李绩始终还支持李世民打高句丽,李世民死了以后,李绩也继续支持。直到
75岁,李绩把高句丽灭国了。76岁,李绩死了。这位17岁少年,年轻的时候在瓦冈寨还有个重要作为,是杀了隋国北方的顶梁
柱,那家伙一死,杨广就安心呆在江都不回来了。那个家伙叫张须陀,五十多岁没太大作为,当个太守。遇到绝收,百姓饿死不少。
派人去京城申请开国家储备粮仓的话,往返需要10多天,张觉得会死更多的人。
于是他擅自决定开了仓,后来被人告了,杨广也没批评他,还说做得对。张须陀以一个之力在北方独自支撑,而且占了不少地方。后来反隋的一方一看,
不整死你,我们就没有出头之日了,设了阵地把张围起来。张反复冲突,居然跑
了。跑出来一看,属下还都在里面,又杀回去,带出来不少。一看,还有属下在里
面,又杀回去,又带出来不少……反复几次以后,属下大部分都带出来了,张须陀
阵亡。张之死,于起义军是幸事,不过这位仁兄真英雄也。小恩小惠,甚至像李广一样
吸个脓啥的,和这个比,根本不算啥。张把命搭里了,这是真感情,不是表演。总之,那个时代,真是英雄辈出。看他们一个个意气风发,或者被剁了,觉得牙
也不那么疼了。然后想到卑微的我们。其实我们身边也诸多牛人,像谁谁,谁谁谁,还有谁谁谁
这样的。只不过,一方面牛人们的所做所为,在未暴露出小宇宙的时候,我们还
以为他是一介凡夫;另一方面,牛人们自有牛人的世界,他们后来就淡出了我们
的视线,成为传说--或者说,我们就淡出了他的视线。其实我已经亲眼见过不少牛人了。你没见过,是因为你还小,或者因为你视而不
见,还骄傲着以为自己也是牛人之一他也没啥呢。还有一种可能,你真的就是我以后要膜拜的牛人之一。或者连之一也没有。附:牛人啊,将来请别忘了,你当年看过这样一个贴子,在这里,我指出你是牛
人。微软思科,华为腾讯。php,jsp,java,C++,lisp。天下其实一直混战。大家都想跟着英雄混,或者,功利的,跟着以后成了帝王的那个混,把当前手上
的技术扔了。但是,谁最终会成为英雄,如果你不是英雄,又如何判别呢。经常有人吹牛啊,
这技术以后没戏了,那个技术一定会成为引领时代潮流的方向。那都是唬你呢。当年起义军招兵买马的时候,哪个不说自己是真命天子。又有几
个活过那几年。如果他真能判断出来,早就自己颠颠去开发,还天天教这个?
赵老师说
赵老师说赵老师准备了要问的问题,是个好模板,留了一些空。赵老师说:软件工程缺乏机械工程的成熟符号体系。赵老师说:小鬼子的方法,你粗一看挺笨,但是看到了最后,反倒是最笨的方法是最好使的。赵老师说:用的成员中,啥也不会的也能用,给出模板,告诉如何把文字转换成代码
赵老师说:小组内的初学者之间会相互交流
赵老师说:不会编码的也可以用,需要人做PPT,需要人画流程图
赵老师说:最怕会半截的,遇到困难他会停下来半天不动,还追屁股后面问,没工夫结答。赵老师说:捕捉异常,暂不处理。