
No.9ベストアンサー
- 回答日時:
#include <stdio.h>
int main()
{
int i ;
char hoge_hoge_fuga_fuga[]="hello\" ;
for(i=0;moji[i]!='\0';i++){
printf("%c\n",moji[i]);
}
return 0;
}
これだったら、何が間違えているか、わかりますよね?
あなたの(int i,moji;のmojiを消した)プログラムは、これとまったく同じです。
> mojiを宣言しろって言われる
この場合、3つの場合が考えられます
(1) 本当に宣言を忘れている
(2) 正しく宣言したのに、使う時に間違えている。
int count ; /* count というint型の変数を使いたいので宣言 */
caunt = 1 ; /* countのつもりで、打ち間違えている */
(3) 間違えて宣言したので、正しい名前で使おうとしても使えない
int caunt ; /* count というint型の変数を使いたいのに、間違えている */
count = 1 ; /* 使いたい変数名は正しいのに、宣言が間違えているので使えない */
コンピュータには、このうちどれかを判断する能力はありません。
なので「宣言しろ」としかメッサージを出せません。
修正方法は、(1)は「宣言を追加する」ですが、(2)(3)は「正しい名前になおす」です。
(2)(3)を「宣言の追加」で対応してしまうと、他のエラーになったり(現在の「添字が付けられた値が〜」と出る状態),
コンパイルエラーは出ないけど、実行すると思ってたのと違う、ということになります。
コツは、疑うことです。
「絶対に間違ってない」という目で見ると、間違ってないように見えてしまいます。
iとjは字面も似てるし、キーボードの位置も近くです。
ji と打とうとして、 ij になってしまうこともあるでしょう。
書き写した元の紙が手書きで判別しにくいとか、汚れてるとか、誤植でそもそも間違っているとか、いろんなケースが考えられます。
No.2
- 回答日時:
>もーちょい詳しくお願いします
いや、指摘されたまんまでしょう。
for文のループ条件やprintf()の中で見たいのはmoij[]じゃないんですか?
int型のmojiは配列じゃないですよ。
紛らわしい変数名つけて、自分が惑わされていれば…楽しいですね。
数学の教科書開いて国語の勉強しましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「指定されたキャストは有効で...
-
return 1L
-
C言語での引数の省略方法
-
C言語で分からないところがあり...
-
#define _CRT_SECURE_NO_WARNIN...
-
実数の整数部,小数部の取得
-
C言語で三目並べをするプログラ...
-
int16_t の _t は何?
-
systemの戻り値を取得する方法
-
if と配列の組み合わせ
-
部分行列の抜き出し(C言語)
-
acceptをalarmでタイムアウトさ...
-
C言語 等差数列問題
-
入力を待たずにstdinの監視をし...
-
C言語の関数で戻り値を返す必要...
-
反復処理
-
system関数がうまくいかない
-
異なる文字列のマッチングを、D...
-
フィボナッチ数列 プログラミ...
-
【C++】関数ポインタの使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
#define _CRT_SECURE_NO_WARNIN...
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
【C++】関数ポインタの使い方
-
C言語 エラーの原因がわからな...
-
複数桁10進数の*桁目だけを抽出...
-
return 1L
-
if と配列の組み合わせ
-
ラップ関数とはどんなものですか?
-
式は定数値が必要です」という...
-
数字列を3桁ごとにカンマで区切...
-
実数の整数部,小数部の取得
-
C言語でDxlibを使って3x3の奇数...
-
プログラムについて(UNIX)
-
acceptをalarmでタイムアウトさ...
-
C言語の課題です
-
エラー 添字が付けられた値が、...
-
CStringの配列要素を関数で受け...
-
最早開始時間と最遅完了時刻を...
-
入力された数字を大きい順に並...
おすすめ情報