野指针问题 出现情况 注意事项


/*
           野指针问题    局部定义指针  未初始化    就是野指针  程序会出问题  

                         越界访问  

                         内存空间被释放了 还给 操作系统了 


*/
//
//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)
                                                                                                          


 */

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值