ポインタとはメモリのアドレスを使って操作をすること
&: アドレス演算子
*: アドレスを示す(間接演算子)
宣言時も*を使う
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;
}