[問題] 指標變數相減問題
請問各位強者大大
寫了一個很小的程式來驗證指標變數相減的結果
#include <stdio.h>
int main(int argc, char *argv[]){
int *a = (int *)0x1ff1234;
int *b = (int *)0x1ff0000;
int c = (int )a;
int d = (int )b;
printf("a = %p\n", a);
printf("b = %p\n", b);
printf("substract a - b value = %p\n", a - b );
printf("substract c - d value = %p\n",c - d );
return 0;
}
==================================
輸出結果為
a = 0x1ff1234
b = 0x1ff0000
substract a - b value = 0x48d
substract c - d value = 0x1234
小弟愚鈍的是為甚麼 a - b 不是 0x1234 呢
不就指標指向的address 相減嗎
非常感謝解惑!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.185.75.196
→
10/29 03:23, , 1F
10/29 03:23, 1F
→
10/29 03:24, , 2F
10/29 03:24, 2F
推
10/29 13:21, , 3F
10/29 13:21, 3F
→
10/30 00:26, , 4F
10/30 00:26, 4F
→
10/30 12:11, , 5F
10/30 12:11, 5F
→
10/30 12:12, , 6F
10/30 12:12, 6F
→
10/30 12:12, , 7F
10/30 12:12, 7F
→
10/30 12:13, , 8F
10/30 12:13, 8F
推
10/30 22:23, , 9F
10/30 22:23, 9F
→
10/30 22:23, , 10F
10/30 22:23, 10F
→
10/30 22:24, , 11F
10/30 22:24, 11F
→
11/01 10:18, , 12F
11/01 10:18, 12F
→
11/01 15:54, , 13F
11/01 15:54, 13F
→
11/01 15:54, , 14F
11/01 15:54, 14F
→
11/01 15:55, , 15F
11/01 15:55, 15F
→
11/01 19:41, , 16F
11/01 19:41, 16F
→
11/01 19:42, , 17F
11/01 19:42, 17F