C++指针,高手求解!
short stacks[3] = {3, 2, 1};
short *ps = &stacks[0] ; // short *ps = stacks;
&stacks[0] 是stacks数组中个第1个元素的地址,而左边ps是一个地址,*ps是一个储存在该地址的值,为什么 *ps(值) = &stacks[0](地址) , 这样就矛盾啦
我知道我理解错了,高手求解谢谢!!
[解决办法]
short *ps = &stacks[0] ;
相当于
short *ps = NULL;
ps = &stacks[0] ;
[解决办法]
short *ps = &stacks[0] //不能理解为*ps= &stacks[0]。前者是定义个指针,并为指针初始化···
[解决办法]
short *ps = &stacks[0] ;
表示 声明一个 short * 类型的指针变量 ps ps 初始化指向&stacks[0]
[解决办法]
那你
short *ps = NULL;
*ps = &stacks[0] ;
你这样看看会不会出错
连着是 把定义变量和赋值一次搞了
就相当于我在2楼的回复