摘要: 我发现AUPE2P334页文字第九行翻译错了一个句子Onreturn,theintegertowhichsignoppointswillcontainthenumberofthesignalthatwasdelivered翻译为:指向的整数将作为返回值,表明发送信号的数量。---应该为发送的信号值真是他妹啊,他妹啊!害我看半天都木有看懂,坑爹啊,坑爹啊,草草草草草 阅读全文
posted @ 2011-09-04 22:41 tungli 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 一、信号及信号来源信号本质信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程有哪些事情发生了。信号机制经过POSIX实时扩展后,功能更加强大,除了基本通知功能外,还可以传递附加信息。信号来源信号事件的发生有两个来源:硬件来源(比如我们按下了键盘或者其它硬件故障);软件来源,最常用发送信号的系统函数是kill, raise, alarm和setitimer以及s 阅读全文
posted @ 2011-09-04 16:37 tungli 阅读(245) 评论(0) 推荐(0) 编辑
摘要: voidsetzeros(int*array,intm,intn){#definearray(i,j)(*(array+(i)*n+(j)))intflag_row=-1;intflag_rank=-1;inti,j;for(i=0;i<m;i++)for(j=0;j<n&&flag_row==-1;j++)if(array(i,j)==0){flag_row=i;flag_rank=j;}if(flag_row==-1)return;for(i=0;i<m;i++)if(array(i,flag_rank)==0)array(i,flag_rank)=1;e 阅读全文
posted @ 2011-09-03 23:11 tungli 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 1、概述C++中出了const关键字以后,宏定义常量的功能已经不在被推荐使用。这使得宏似乎没有了用武之地。实际上,宏还可以做很多事情,笔者也难以全部列举。这里,仅仅列举几个典型的用法,希望大家能够从中获益。2、实现多环境兼容常见的情况是,我们实现了一个函数,希望它只在某种编译条件满足是被编译和使用。例如,我希望在源码中插入调试语句,以便以Debug方式运行时能够通过调试信息观察程序运行情况。但是,在产品发售给用户时,我又希望这些调试信息不要输出,以降低代码尺寸,提高运行性能。 这一问题的解决方法就是使用宏。根据条件编译指令,对于不同的编译条件,提供不同的实现。例如:我们希望在特定的位置向日志中 阅读全文
posted @ 2011-05-10 19:56 tungli 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 本文出自乾坤一笑 的Blog文章 水平不高不低的C++程序员最喜欢挂在嘴上的一句话就是:C宏,万恶之首,错误的开端,应该被废弃。 请注意,我用了一句不敬的修饰语“水平不高不低的”。为什么这么说?因为水平低都插不上话,都在在静静地听老前辈布道呢。水平高的,比如Bane Stroustrup老人家,也只是说若干种场合下C++语言能够提供比C macro更好的解决方案,而没有完全否定C macro的价值。但是话就怕传来传去,一传就走样。久而久之,就被传成上面那句话。其实说来也很好笑:java程序员经常说java比C++好,说C++手动释放内存老搞内存泄漏;C++程序员便反驳说,那是你水平低不会用。但 阅读全文
posted @ 2011-05-10 19:55 tungli 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 1.Visual Assist(强烈推荐)http://www.wholetomato.com/ VA从5.0一直到现在的VAX,功能越来越强大,除了以前版本中的自动识别各种关键字,系统函数,成员变量,自动给出输入提示,自动更正大小写错误,自动标示错误等等以外,最新的版本中还在WorkSpace窗口中加入一个VA View,可以更方便的查找工程中的文件、类和变量。vc6 的专家系统很差,2003还马马虎虎,用这个插件可以对第三方库分析,获得动态输入提示,自动识别各种关键字,系统函数,成员变量,自动更正大小写错误,自动标示错误,可以goto到鼠标所在函数等等。2.WndTabshttp://ww 阅读全文
posted @ 2011-05-09 21:41 tungli 阅读(937) 评论(0) 推荐(0) 编辑
摘要: View Code 1boolBCDtoStr(char*str,unsignedchar*BCD,intBCD_length)2{3if(BCD==0||BCD_length==0)4returnfalse;5inti,j;6for(i=0,j=0;i<BCD_length;i++,j+=2)7{8str[j]=(BCD[i]>>4)>9?(BCD[i]>>4)-10+'A':(BCD[i]>>4)+'0';9str[j+1]=(BCD[i]&0x0F)>9?(BCD[i]&0x0F)-10 阅读全文
posted @ 2011-04-15 23:53 tungli 阅读(2228) 评论(0) 推荐(0) 编辑
摘要: 1.打开www.boost.org下载最新版本 1.43.0, 解压至 C 盘根目录。2.打开 Visual Studio 2008 命令提示窗口3.进入 C:\boost_1_43_0\tools\jam\src4.执行 build.bat ,会在 C:\boost_1_43_0\tools\jam\src\bin.ntx86 生成 bjam.exe 文件,复制 bjam.exe 文件到 C:\boost_1_43_0 下。5.修改 C:\boost_1_43_0\tools\build\v2\user-config.jam 找到下面的文字# -------------------# MSV 阅读全文
posted @ 2011-03-13 14:22 tungli 阅读(742) 评论(0) 推荐(0) 编辑
摘要: zero 坐在餐桌前,机械的重复“夹菜 - 咀嚼 - 吞咽”的动作序列,脸上用无形的大字写着:我心不在焉。在他的对面坐着 Solmyr ,慢条斯理的吃着他那份午餐,维持着他一贯很有修养的形象 ——— 或者按照 zero 这些熟悉他本质的人的说法:假象。“怎么了 zero ?胃口不好么?”,基本填饱肚子之后,Solmyr 觉得似乎应该关心一下他的学徒了。“呃,没什么,只是 …… Solmyr ,C++ 为什么不支持垃圾收集呢?(注:垃圾收集是一种机制,保证动态分配了的内存块会自动释放,Java 等语言支持这一机制。)”Solmyr 叹了口气,用一种平静的眼神盯着 zero :“是不是在 BB 阅读全文
posted @ 2011-01-05 17:08 tungli 阅读(1871) 评论(1) 推荐(4) 编辑
摘要: #define用法以及#define和typedef区别1.简单的define定义#define MAXTIME 1000 2.define的“函数定义”define可以像函数那样接受一些参数,如下#define max(x,y) (x)>(y)?(x):(y);因为这个“函数”没有类型检查,就好像一个函数模板似的,没有模板那么安全就是了。但是... 阅读全文
posted @ 2010-12-02 21:47 tungli 阅读(8476) 评论(0) 推荐(2) 编辑