博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
空指针与野指针的区别
阅读量:4576 次
发布时间:2019-06-08

本文共 601 字,大约阅读时间需要 2 分钟。

 

值为0 (NULL)的指针叫 空指针。

int *p = 0;

当指针为空时,不能使用“*”号操作

int * p = 0;

printf("%d\n",*p);程序执行出错。

 

但空指针是程序员可以接受的一种情况,只需要加一个 if 判断就能解决!

   if ( p )

    pintf("%d \n",  *p );

空指针的应用

 

#include
void max_min( const int *arr, int len, int *pmax, int *pmin){ int _max = 0; int _min = 0; /*此处省略排序算法*/ if( pmax ) *pmax = _max; if( pmin ) //等于0就不执行 *pmin = _min; }int main(){ int arr[4]; int _max; max_min( arr, 4, &max, 0);//没必要得到min return 0;}

 

  

 

野指针

int *p;

 *p=0;//没有指向谁就直接赋值,导致语法错误,程序崩溃.所以定义指针的时候要赋值

 

转载于:https://www.cnblogs.com/yygsj/p/4925775.html

你可能感兴趣的文章
冒泡排序
查看>>
常用NFS mount选项介绍
查看>>
Nand Flash与Nor
查看>>
一个非常好用的前端JS框架-AngularJS(一)
查看>>
Java EE 学习(7):IDEA + maven + spring 搭建 web(3)- 配置数据库
查看>>
webpack打包时修改package.json的版本号,并输出相关版本
查看>>
Redis常用数据结构及使用场景
查看>>
Linux下Java程序运行环境搭建及相关配置【JDK+Tomcat+MySQL】
查看>>
SpringClound微服务整体架构图
查看>>
MySql一条查询语句&更新语句执行流程
查看>>
GPE监控预警系统搭建--Grafana+Prometheus+Exporter
查看>>
GPE监控预警系统使用【 mysql数据库监控】
查看>>
Docker安装及简单命令【liunx系统】
查看>>
软件开发报价计算方式
查看>>
神经网络【简述】
查看>>
JVM教程之一【基础篇】
查看>>
Python3基础系列之一【基础语法】
查看>>
Python3基础系列之二【基本数据类型】
查看>>
Python基础系列之小案例
查看>>
python3基础系列之三【运算符】
查看>>