c言語、文字列の質問です。SPASPASPと表示させたいです。 int main(void) { char str[3][3]; for (int i = 0; i < 3; i++) { str[i][0] = 'S'; str[i][1] = 'P'; str[i][2] = 'A'; } str[2][2] = '\0'; printf ("%s", str); } 上記のようにすると rrr.c:16:19: error: format specifies type 'char *' but the argument has type 'char (*)[3]' [-Werror,-Wformat] printf ("%s", str); というエラーがでてしまい、コンパイルできませんでした。 printf ("%s", str);のところを for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%c", str[i][j]); } } のようにするとコンパイルされました。 質問なのですが、なぜprintf ("%s", str);ではエラーがでてしまうのでしょうか? プログラム初心者向けの解説をお願いしますm(_ _)m
C言語関連