读书人

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

发布时间: 2012-08-26 16:48:05 作者: rapoo

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

C/C++ code
int main(){    char num=0;    char *n=#    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 = #    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=#  v.p = n;  cout<< v.n<<endl; //结果是空的 //-这样就不会空了   char sizePut[9];  cout<<&sizePut<<endl;  return 0;}
[解决办法]
printf("%p"

读书人网 >C++

热点推荐