[問題] Dev-C++ 一個記憶體位址問題?
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
#include <iostream>
using namespace std;
int main(){
int a[3];
a[0]=0;
a[1]=1;
a[2]=2;
int *p,*q;
p=a;
cout<<"p="<<p<<endl;
cout<<"*p="<<*p<<endl;
q=&a[2];
cout<<"q="<<q<<'\n';
cout<<"*q="<<*q<<'\n';
cout<<"q-p="<<q-p<<'\n';
cout<<a[q-p]<<'\n';
cout<<a[*q-*p]<<'\n';
return 0;
}
在程式中 我印出來
p = 0x22ff60
q = 0x22ff68
可是q-p印出來卻是2
記憶體位址相差8
可是q-p卻是2
所以想問問看大家這是為什麼?
謝謝大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.195.151
→
06/19 02:34, , 1F
06/19 02:34, 1F
推
06/19 02:40, , 2F
06/19 02:40, 2F
→
06/21 11:31, , 3F
06/21 11:31, 3F