• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C/C++中的if(指针变量)和if(!指针变量)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

当把一个指针作为条件表达式时,所要判断的条件实际上就是“该指针是否为一空指针”。
在if,while,for或do/while等语句中,或者在条件表达式中,都可以使用指针。

代码演示 if(指针变量)

解读代码

if (指针) {
    // 不是空指针 执行这个
}else {
    //指针 是一个空指针, 执行这个
}

if(!指针变量)

解读代码

注意看上面,我让她打出的是p 不是pointer!

if (!指针) {
    // 如果指针是空指针  !指针后 那么条件就成立了。也就是会执行这个地方的语句
}else {
     // 如果指针不是空指针  !指针后 那么条件相当于false了。也就是会执行这个地方的语句
}

总结

if(指针)
主要用来判断如果指针非空指针的时候,进行需要的操作

if(p){
    //指针不为空,满足我们需要的条件,继续进行需要的操作
    //xxxxx 
}else {
     // 指针为空了,进行相应的操作,终止操作,结束程序之类的。
}

if(!指针)
主要用来判断如果指针是空指针的时候,进行出错处理和return 出去。说明有错误了


if(!p){
// 只有指针为空,才会进入此部分,那么进行出错处理之类的。
 // xxxxx 
} else {
     // 一般没有else
}

替代方案。推荐写法!!!!!

如果没有写习惯,是不是很不习惯!对的,我感觉有点反常人类思维。

下面的是不是更加清晰好理解呢。 一看就明白去哪个分支去执行。

if (nullptr == p) {
    //
} else {
    // 
}
if (nullptr != p) {
    //
} else {
    // 
}


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap