摘要: 使用更安全的C字符串操纵 作者: Builder.comWednesday, November 3 2004 11:13 AM声明在 和 中的标准 C 函数是由于缓冲区溢出所引发的缺陷(bug)和安全漏洞的丰富来源。虽然推荐的解决方案是迁移到 C++ 的 和 库,但是并不是所有的程序都可以这样迁移。通过对很多流行的应用程序和操作系统的与安全相关的缺陷的研究发现,C 字符串函数的应用比我们想象的要多。这个技巧将向你展示如何轻易地提高你的代码安全级别,即使代码中使用了标准 C 函数。C99 标准 包括了一些明确检查了缓冲区大小的新函数,因此降低了出现溢出的机会。考虑以下有缺陷的例子: void f 阅读全文
posted @ 2012-12-19 17:04 功夫 熊猫 阅读(483) 评论(0) 推荐(0)
摘要: calloc可以代替malloc+memset,但是malloc+memset代替不了calloc, calloc大块内存时,如果是从系统分配,就可以免了memset的操作,快很多。memset可以设任意数,calloc只能设0 calloc表示申请count*size大小的内存 malloc只有一个参数malloc函数原型: extern void *malloc(unsigned int num_bytes);函数描述: 分配长度为num_bytes字节的内存块入口参数: num_bytes 内存块的大小(单位为字节)出口参数: 无(或为空)返回值: 如果分配成功则返回指向被分配内存... 阅读全文
posted @ 2012-12-19 11:04 功夫 熊猫 阅读(2116) 评论(1) 推荐(0)