int *p1=malloc(4); int *p2=malloc(4); printf("p2-p1=%d\n",p2-p1);(p2-p1)的值与malloc(size)的size有什么关系,还有跟p1,p2的类型有什么关系,为什么会是这样地呢?请高手指点迷津!

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/12 05:41:44
int *p1=malloc(4); int *p2=malloc(4); printf(
xQN@$1S%wT7JH'U%XQL(Ԡ!^5ܙv/8m5!]1=̽Q*; A:=܉G!J,B(H%Vvyw+:[Wͭ m`aɘBx'܊4+!BiL&gdZ 4&#A֧~N4pi4E&*9?EÞidocOMJȏl鷫lsK'w.L͈\KɤlXvJ( ֟ImAObN80aXCר'i:On;~R./XE2J:^p?5%`+tOA

int *p1=malloc(4); int *p2=malloc(4); printf("p2-p1=%d\n",p2-p1);(p2-p1)的值与malloc(size)的size有什么关系,还有跟p1,p2的类型有什么关系,为什么会是这样地呢?请高手指点迷津!
int *p1=malloc(4); int *p2=malloc(4); printf("p2-p1=%d\n",p2-p1);
(p2-p1)的值与malloc(size)的size有什么关系,还有跟p1,p2的类型有什么关系,为什么会是这样地呢?请高手指点迷津!

int *p1=malloc(4); int *p2=malloc(4); printf("p2-p1=%d\n",p2-p1);(p2-p1)的值与malloc(size)的size有什么关系,还有跟p1,p2的类型有什么关系,为什么会是这样地呢?请高手指点迷津!
1 (p2-p1)的值与malloc(size)的size没有关系,跟p1,p2的类型也没有关系;
2 *p1=malloc(4); 表示由操作系统分配四个整型存储单元,并将分配到的四个单元的首地址赋给p,这个值由操作系统管理,因此p2-p1的值是不确定的.