首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

打印一个变量地址,输出是空的,为何

2012-08-26 
打印一个变量地址,输出是空的,为什么?C/C++ codeint main(){char num0char *n&numcoutnendl//结

打印一个变量地址,输出是空的,为什么?

C/C++ code
int main(){    char num=0;    char *n=&num;    cout<<n<<endl;    //结果是空的    char sizePut[9];    cout<<&sizePut<<endl;}


[解决办法]
C/C++ code
#include <iostream>using namespace std;int main(void){    char num = 0;    char* n = &num;    cout << (void*)n << endl;    char sizePut[9];    cout << &sizePut << endl;}
[解决办法]
这样是看不到指针地址的,C++不同于C,不能用这种方法观察到地址,要用点技巧:
C/C++ code
int main(){  union {    int n;    void* p;  } v;  char num=0;  char *n=&num;  v.p = n;  cout<< v.n<<endl; //结果是空的 //-这样就不会空了   char sizePut[9];  cout<<&sizePut<<endl;  return 0;}
[解决办法]
printf("%p"

热点排行