15.分配内存失败的考查
来源:互联网 发布:淘宝零食店怎么开 邮费 编辑:程序博客网 时间:2024/05/20 11:50
void Test( void )
{
char *str = (char *)malloc(100);
strcpy( str, "hello" );
free( str );
str = NULL;
}
答:malloc后,应判断 *p是否NULL
这个题目自身有问题,深层次思考:
出题人原意,free(str)后,用str = NULL杜绝野指针,但是这种写法过于教科书化,离开这个函数,str都不能使用了,
还搞个str=NULL,不需要;
在C++中,如果使用new,更不需要,参考《常见错误61: 内存分配失败校验----读书笔记《C++ gotchas》》,
标准的new运算符在分配失败时,抛出一个bad_alloc类型的异常。在任何情况下,校验标准形式new运算符返回结果
都不能起到检测错误的功效。
0 0
- 15.分配内存失败的考查
- 内存分配失败的处理
- win32下的内存分配失败原因
- PTVS的内存分配失败及处理
- 内存分配失败处理
- 内存分配失败
- malloc分配内存失败
- new内存分配失败
- malloc分配内存失败
- 漫谈C++内存分配失败
- 内存分配失败错误处理
- 内存分配失败错误处理
- 漫谈C++内存分配失败
- new 内存分配失败处理
- 内存分配失败错误处理
- C++ Gotchas 条款61:检查内存分配失败的情形
- C++ Gotchas 条款61:检查内存分配失败的情形
- C++ Gotchas 条款61:检查内存分配失败的情形
- golang中net包用法(三)--TCP和UDP以及Unix domain socket
- 如何使用BackTrack破解WIFI无线网络的WEP密钥
- golang中net包用法(二)--IP
- 如何使用Reaver破解Wi-Fi网络的WPA密码
- golang中net包用法(一)
- 15.分配内存失败的考查
- golang中net/mail包用法
- 常用知识点-UILabel的自适应
- ios UIWebview Loading Progress
- 动漫推荐之希德尼娅的骑士
- NYOJ 题目983 首尾相连数组的最大子数组和
- golang中image包用法
- docker退出关闭容器
- 集训小记 6