运算处理R-1-6-16强制

禁止使用已释放的内存

重合: #R-1-3-5 《禁止使用或释放未分配或已释放的指针》有某种程度上重复,做了详细界定

已释放的内存使用
test.c
1#include <stdlib.h>
2
3void foo(void)
4{
5 char c, *p = (char*) malloc(1);
6 if (p)
7 {
8 free(p);
9 c = *p;
禁止使用已释放的内存 [gjb8114-r-1-6-16]
10 }
11}
释放前的使用
test.c
1#include <stdlib.h>
2
3void foo(void)
4{
5 char *p = (char*) malloc(1);
6 if (p)
7 {
8 *p = 1;
9 free(p);
10 }
11}