不是指针无论是什么类型都是4个字节吗?
#include <stdio.h>int main(){
int arr[10]={1,2,3,4,5,6,7,8,9,10};
double *p2=(double*)&arr[0];
p2++;
printf("%d\n",*((int*)p2)); //输出为3
printf("%d\n",sizeof(p2)); //输出为8
return 0;
}
为什么输出的结果是3?不是指针无论是什么类型都是4个字节吗?
在b站上课是说:“一个指针变量,无论它指向的变量占几个字节
该指针变量本身只占四个字节。”