《C++Primer》第四版 4.2.2 指针的定义和初始化 5。避免使用未初始化的指针 如果必须分开定义指针和其所指向的对象,则将指针初始化为0。 ------------ 这句话是什么意思?
定义一个指针,立刻初始化它,就可以了。 为什么,初始化:0?
可以明确表示p刚开始指向一个无效地址,读写一个无效地址通常是访问违例, 这通常说好事, 可以让bug尽早显形。 于此相比: //栈上 int *p; p指向一个不确定的值, 如果读写一个不确定地址就是不确定性行为了。谁敢用一个具有不确定性行为的系统!!
//栈上 int *p;
楼上各位: 问题是问:有什么作用?
65,208
社区成员
250,517
社区内容
加载中
试试用AI创作助手写篇文章吧