use*_*974 1 c c++ pointers integer
如果我运行以下代码,它会显示一个长号.
int i;
int *p;
p= &i;
cout<<*p;
Run Code Online (Sandbox Code Playgroud)
为什么未分配的int有值?这个价值是多少?
指针的值p是的地址int i.你为它分配了地址&运营商:p = &i.它int i本身未初始化,也称为默认初始化.当您取消引用指针时,*p您将获得未初始化的值,int i这可能是任何值.
你的值int i是未初始化的内存被解释为int.使用未初始化的变量是未定义的行为.
通过简单地执行以下操作,您将拥有相同的行为而没有指针:
int i;
cout << i;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
750 次 |
| 最近记录: |