プログラミング初心者です。
かなり基本的なことだと思いますが、調べてもどうしてもわからないので教えていただきたいです。
C言語でポインタ配列について勉強中です。
下記のようにコードを入力してポインタ配列のアドレスや格納されている値を確認するというものなのですが、
太字斜体にしている部分について質問があります。
なぜ"str+i"と"str[i]"という違った記述をしなければならないのかがわかりません。
どちらの記述も同じ意味ではないのでしょうか?
試しに両方とも"str+i"と記述するとエラーになりました。
(逆に両方"str[i]"にすると特に問題ありませんでした)
int main(void) {
char *str[] = {"dog", "cat", "rabbit"};
int i;
for(i = 0; i < 3; i++) {
printf("%p str[%d]: %s アドレス:%p\n", str+i, i, str[i], *(str+i));
}
return 0;
}
どうぞよろしくお願いします。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。