![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
minsanyuan
这个作者很懒,什么都没留下…
展开
-
在 POSIX 线程编程中避免内存泄漏
POSIX 线程(pthread)编程定义了一套标准的 C 编程语言类型、函数和常量 — 且 pthreads 提供了一种强大的线程管理工具。要充分使用 pthreads,您要避免常见错误。一个常见的错误就是忘记联接可接合的线程,从而导致内存泄漏并增加工作量。在该篇技巧型文章中,学习 POSIX 线程基础,了解如何识别和检测线程内存泄漏,并获得避免出现这种情况的可靠建议。转载 2010-12-08 15:29:00 · 345 阅读 · 0 评论 -
strcat在某种特定条件下的优化
strcat是C语言一个基本的字符串操作函数,它的源代码一般是这样的。char *strcat(char *dest, const char *src) { char *tmp = dest; while (*dest) dest++; while ((*dest++ = *src++) != '/0'); return tmp; } 由此可见,strcat调用时,先移动目标字符串的指针到其尾部,再进行复制。这种做法对于下标比较大的数组重复调用时,效转载 2010-12-08 14:16:00 · 443 阅读 · 0 评论 -
注意隐式类型转换
<br /><br />int nn1 = -65;<br />unsigned int nn2 = 63;<br />int nn3 = nn1%nn2;<br />printf("%d,%d/n", nn3,-65%63);<br />编译后,执行结果:2,-2<br />原因:隐式类型转换。<br />注意:string.length()方法,在不同平台返回值的类型是不一样的。在AIX下返回类型为unsigned int;而在VC下则是int。<br />因此在有隐式类型转换风险时必须注意,不原创 2010-12-08 14:18:00 · 371 阅读 · 0 评论 -
C++中的四种强制类型转换的区别
<br /><br />使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。<br /> <br />1 static_cast<br />用法:static_cast < type-id > ( expression ) <br />该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:<br />①用于类层次结构中基类和子类之间指针或引用的转换转载 2010-12-08 12:01:00 · 352 阅读 · 0 评论 -
GCC编译优化指南
<br />原文: http://www.svn8.com/shouce/Linux/optimize_guide.html<br />GCC编译优化指南作者:金步国版权声明<br />本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它条件。您可以自由链接、下载、传播此文档,但前提是必须保证全文完整转载,包括完整的版权信息和作译者声明。其他作品<br />转载 2010-12-23 14:54:00 · 600 阅读 · 0 评论