作业强化题和野指针

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string>
using namespace std;

//野指针产生的原因
//指针变量和它所指向的内存空间变量是两个不同的概念
//释放了指针所致的内存空间  但是指针本身没有重置成null

//避免方法:1)定义指针的时候  初始化成null 2 ) 释放指针所指向的内存空间后,把指针重置成NULL

int main()
{
	char *p1 = NULL;
	char *p=NULL;
	p1 = (char*)malloc(100);
	if (p1 == NULL)
	{
		return 0;
	}
	strcpy(p1,"11112222");

	printf("p1:%s \n",p1);

	if (p1 != NULL)
	{
		free(p1);
		p1 = NULL;
	}

	if (p1 != NULL)
	{
		free(p1);
	}
	return 0;

}

//内存四区图

猜你喜欢

转载自blog.csdn.net/weixin_41983807/article/details/87889699