问题1.第一个程序声明node* p,这里的p是一个全局变量.C++默认将全局变量初始化为0.所以输出结果是0x00000000.第二个程序的node* p声明在主函数main()之中,这里的p是一个局部变量.输出的应该是个随机值,但安全起见0xCCCCCCCC是一个比较远的地址,是一个用户不可以使用的地址.问题2.两个程序中,你指声明了一个结构体变量的指针.其实质是一个地址.*p表示p中存储的地址中的内容.举个例子,int* q=a;,q表示变量a的地址,而*q表示变量a的值.正确的做法如下:node* p;node element;p=&elementelement.k=1;//或p->k=1;elemen
|