当前位置: 首页 > news >正文

买服务器做网站百度网盘官网

买服务器做网站,百度网盘官网,东莞软件定制开发,外贸石材网站C入门 指针空值 指针空值 在良好的C/C编程习惯中,声明一个变量时最好给该变量一个合适的初始值,否则可能会出现 不可预料的错误,比如未初始化的指针。如果一个指针没有合法的指向,我们基本都是按照如下 方式对其进行初始化: voi…

C++入门

  • 指针空值

指针空值

在良好的C/C++编程习惯中,声明一个变量时最好给该变量一个合适的初始值,否则可能会出现
不可预料的错误,比如未初始化的指针。如果一个指针没有合法的指向,我们基本都是按照如下
方式对其进行初始化:

void TestPtr()
{int* p1 = NULL;int* p2 = 0;// ……
}

NULL 实际是一个宏 ,在传统的C头文件(stddef.h)中,可以看到如下代码:

#ifndef NULL
#ifdef __cplusplus
#define NULL 0  // NULL 实际是 0 
#else
#define NULL ((void *)0) //这里 强转为指针类型
#endif
#endif

可以看到,NULL可能被定义为字面常量0,或者被定义为无类型指针(void*)的常量。不论采取何
种定义,在使用空值的指针时,都不可避免的会遇到一些麻烦,比如:

#include<iostream>using namespace std;void func(int ) {cout << "f(int)" << endl;
}void func(int* ) {cout << "f(int*)" << endl;
}
int main() {func(0);func(NULL);//func((int*)NULL);return 0;
}

运行效果是这样的:
在这里插入图片描述
必须进行强转
func((int*)NULL);
才会转换为指针。

程序本意是想通过f(NULL)调用指针版本的f(int*)函数,但是由于NULL被定义成0,因此与程序的初衷相悖
在C++98中,字面常量0既可以是一个整形数字,也可以是无类型的指针(void*)常量,但是编译器
默认情况下将其看成是一个整形常量,
如果要将其按照指针方式来使用,必须对其进行强转(void*)0

注意:

  1. 在使用nullptr表示指针空值时,不需要包含头文件因为nullptr是C++11作为新关键字引入的
  2. 在C++11中,sizeof(nullptr) 与 sizeof((void)0)所占的字节数相同*。
  3. 为了提高代码的健壮性,在后续表示指针空值时建议最好使用nullptr
http://www.tj-hxxt.cn/news/126083.html

相关文章:

  • 江苏优化网站价格百度贴吧的互动社区
  • 开网站的是啥公司福州百度代理
  • 长宁专业网站制作公司360竞价推广
  • 淘宝网站SEO怎么做互动营销成功案例
  • 响应式企业网站建设营销推广文案
  • 建设银行网站招聘官网seo 优化 工具
  • 建设工程获奖查询网站网站流量分析
  • 门户网站舆情怎么做网络营销广告
  • 咸鱼网站做链接济南竞价托管
  • 网站建设长春竞价网站
  • 哪些网站用vue.js做的营销软文范例大全100
  • 怎么做淘宝网站短链接生成器
  • 曰本真人性做爰视频网站百度账号申请注册
  • 深圳企业专业网站设计seo广州工作好吗
  • 什么网站可以做软件有哪些东西吗手机在线制作网站
  • 怎么做视频网站的seoseo自媒体运营技巧
  • 小轲网站建设厦门seo网站管理
  • 茌平网站建设深圳网站维护
  • 做一般的公司门户网站投资额百度排名优化专家
  • 商标注册网上办理流程长沙百度快速排名优化
  • 网站开发 发布谷歌优化推广
  • 公司网站建设申请网上销售培训课程
  • 毕业设计做网站有什么好的创意网站宣传推广方案
  • excel网站链接怎么做批量百度公司有哪些部门
  • 临沂 网站优化真正永久免费的建站系统有哪些
  • 网站新闻模块代码安仁网络推广
  • 自个网站seo的宗旨是什么
  • 网站建设加盟代理微博营销策略
  • 怎么自己做网站挂到百度上windows优化大师卸载不掉
  • 旅游做攻略网站好微信营销策略有哪些