次のコードがそのように機能する理由を理解してください。
#include <stdio.h>
int main(){
int a = 10;
void *b = &a;
int *p = b;
printf("%u",*p++);
return 0;
}
printf の出力が 10 になることはわかっていますが、*p++ が 10 である理由がよくわかりません。
私の手順は次のとおりです。
1) void *b = &a;
a のアドレスをポインタ b に格納する
2) int *p = b;
ポインター p は、ポインター b と同じデータ項目を指すようになりました
3)printf("%u",*p++);
私が混乱するところです...ポインタ p の逆参照は 10 です...*p++
基本的に 10+1 と同じではなく、11 になりますか?