ポインタとはメモリのアドレスを使って操作をすること
&: アドレス演算子
*: アドレスを示す(間接演算子)
宣言時も*を使う
int main(void){ int a; a = 10; int *pa; // *でポインタの宣言 pa = &a; // &aでaのアドレスを入れる printf("%d\n", *pa); //paに入っているアドレスの値を呼び出す return 0; }
$ ./dev
10
なんだこれは? 要は「*」でポインタを宣言した後に、「&」でアドレスを入れて、「*」でアドレスを呼び出してるってことか。
char型でも同じようchar型のポインタを割り当ててできるが、どう活用するかようわからん。
int main(void){ char s[] = "hello"; char *ps; ps = &s[3]; printf("%c\n", *ps); return 0; }