每日一题(23)——malloc与free(四)
来源:互联网 发布:windows office 2013 编辑:程序博客网 时间:2024/06/04 01:01
void Test(void){ char *str = (char *)malloc(100); strcpy(str, "hello"); free(str); if(str != NULL) { strcpy(str, "world"); printf(str); }}
1、指出编程错误
2、指出错误后果
3、指出纠正方法
分析:
篡改动态内存区的内容,后果难以预料,非常危险;因为free(str)之后,str成为野指针,
if(str != NULL)语句不起作用;
将free(str);放在Test最后,处理完成之后再释放。
void Test(void){ char *str = (char *)malloc(100); strcpy(str, "hello"); if(str != NULL) { strcpy(str, "world"); printf(str); } free(str);}
阅读全文
0 0
- 每日一题(23)——malloc与free(四)
- 每日一题(20)——malloc与free(一)
- 每日一题(21)——malloc与free(二)
- 每日一题(22)——malloc与free(三)
- malloc与free(1)
- malloc与free(2)
- malloc与free(3)
- glibc2.5 中的malloc 与 free 之我见(一)
- 每日一题(四)
- (malloc、free)与(new/delete)
- 每日一题(10)—— 数组与指针
- malloc()和free()
- 一,malloc free 函数
- 初学c/c++——谈及malloc与free
- 内存管理——关于malloc/free与new/delete
- 每日一linux命令(36)-------free 命令
- C++进阶—>malloc/free与new/delete的区别
- 田蕴章书法讲座《每日一题,每日一字》(3) 文字整理 ——左右二字与毛笔
- Java写一个简单的死锁程序
- ios11自带邮件添加新的邮箱账号
- java实现求m个大个数
- HashMap与HashTable的区别
- 我的数据结构学习之路(1)
- 每日一题(23)——malloc与free(四)
- 训练日记-5
- 百炼-1664-放苹果-C语言-递归算法入门
- 要找的原来是你——nat123
- Node.js——初识Node.js
- 使用神经网络对黄金期货交割价格进行预测-4 MATLAB
- poj2392 Space Elevator(多重背包)
- XYNUOJ 第四次比赛 情报分析
- Go语言学习笔记 --- 数组的使用