/*
野指针问题 局部定义指针 未初始化 就是野指针 程序会出问题
越界访问
内存空间被释放了 还给 操作系统了
*/
//
//int main()
//{
// char* p; // 1 没有初始化 指针 就是 野指针 野狗没有主人
//
// *P = 20;
//
//
// printf("%d", *p);
//
//
// return 0;
//}
//
//int main()
//{
// int a[10] = { 0 };
//
// int* p = a;
//
// int i = 0;
//
// for (i = 0; i <= 10; i++) // 越界访问了 a数组 中 只有 10 个元素 访问了 11 个元素 越界 了 指向了 未知 非法访问了
// {
// *p = i;
//
// p++;
// }
//
//
// return 0;
//}
//
//
//int * test()
//{
// int a = 10;
//
// return &a;
//}
//int main()
//{
//
//
// int* p = test();
//
// *p = 20; // 内存空间被释放了 还给 操作系统了 这个地址 不能在被访问 赋值 ;
//
// printf("%d", *p);
// return 0;
//
//}
/*
总结 1;;;;;; 记得 初始化 不知道的时候 可以直接初始化 为 空指针 int*p=NULL;
就是把 野狗 给他弄个狗栓 不要出来咬人 ;;;;
2 小心越界 问题 C 语言是不会 检查数组的越界 行为的 要注意
3, 指针指向的 空间释放 了 就及时 空指针 设置为 , 空指针是不能使用的 可以 这样处置 做个判断 if(*p!=NULL)
*/