#include<stdio.h>
#define int int*
main(){
int *p,q;
p=(int *)5;
q=10;
printf("%d",q+p);
}
私の質問は、 in linep=(int *)5
であり、とが両方ともポインター型でq=10
あるため、内部でどのように機能しているのか、ポインター変数に整数値を割り当てることができるのはどうしてですか? もう1つ、このタイプのキャストがここでどのように機能していますか?p
q
q
p=(int*)5
この式を使えば答えられる
新しいアドレス = 古いアドレス + 数値 * ポインタが指しているデータ型のサイズ