1
A
回答
0
指针将指向地址零(大多数系统上为NULL)。在将其用作指针之前,您仍然需要将其指向某个有效的地方(例如,来自malloc)。
+0
不,它将被初始化为NULL指针值,无论它的表示是否为零。对于指针,常数0转换为NULL指针值,而不是所有零的位模式。 –
9
在C静态指针将被初始化为空值,则draft C99 standard部6.7.8
初始化段落说:
具有静态存储持续时间没有明确地进行初始化,则对象:
并包括以下项目符号:
- 如果它有指针类型,则它被初始化为空指针;
所以没有分配存储空间,它是一个空指针。还要注意它是一个实现定义的行为,其中存储了静态变量。
为the C++ draft standard相关的部分应该是为8.5
初始值设定款它说(重点煤矿):
如果一个对象没有指定的初始化,对象是默认初始化;如果未执行初始化,则具有自动或动态存储持续时间的对象具有不确定的值。 [注意:静态或线程存储时间为 零初始化的对象,请参阅3.6.2。末端音符]
零初始化是覆盖在段落它说:
要零初始化对象或类型T的参考是指:
并具有以下子弹:
- 如果T是一个标量类型(3。9)时,对象被设置为值0(零),作为一个积分常量表达式,转换为T;
其中脚注103
说(重点矿山):
如在4.10指定,转换整数表达式中,其值是0至在一个指针类型的结果空指针值。
相关问题
- 1. 静态Qtime默认值
- 2. Visual C++ 6.0中指针的默认值
- 3. 静态指针
- 4. 指针类型的C#默认值
- 5. 声明默认指针值的函数
- 6. 指向静态的指针
- 7. HOWTO:C使用默认值++函数指针
- 8. Java - 静态初始化与静态变量的默认值
- 9. 静态数组指针vs非静态数组指针
- 10. 默认值为静态布尔变量
- 11. Java非静态字段默认值?
- 12. Rails迁移 - 非静态默认值
- 13. 针对非默认静态位置的瓶子nginx和静态文件问题
- 14. ASP.NET默认静态处理
- 15. 如何指定动态默认值
- 16. 静态变量指针?
- 17. 静态指针C++使用
- 18. Bada,静态指针崩溃
- 19. C#指针 - 静态调用
- 20. C++类与静态指针
- 21. C++继承中的静态指针
- 22. 指定默认值
- 23. 指定默认值
- 24. 是默认静态内部类的成员静态在java中
- 25. 动态数组的C静态指针
- 26. 指向非静态成员函数的指针的值
- 27. 宁静WCF默认值
- 28. 如何在静态库中提供默认的YAML配置值?
- 29. AngularJS选择框中的默认静态HTML值
- 30. 带指针的C++默认参数
注意,dup只标记C. –
看起来你对指针变量及其值有点困惑。请记住,**指针变量本身就是一个变量**,这意味着它有一个值,但在这种情况下,您可以使用它的值作为地址。 –