• ベストアンサー

C言語初心者の質問失礼します。

C言語初心者の質問失礼します。 プログラムを作って、cygwinでコンパイラしたのですが、以下のようなエラーメッセージが出てしまいました。 expected declaration or statement at end of input どのような意味なのか教えてください。 ばかみたいな質問でごめんなさい…。

質問者が選んだベストアンサー

  • ベストアンサー
  • emu0202
  • ベストアンサー率35% (5/14)
回答No.3

No. 1 No2 さんに同意です。 直訳すると「入力の最後で、declaration (宣言)もしくは statement (文)が期待されている」です。 文法上、宣言もしくは文のみが期待される場所というのは、複合文のカッコ { と } に挟まれた部分です。 また、ファイルの最後は、関数定義の閉じカッコのはずです。その場所で、宣言もしくは文が期待されるのは、本来おかしいです。 おそらく、プログラマの意図として関数の閉じカッコを書いたハズが、期待通りに関数の閉じカッコとして解釈されず、複合文の閉じカッコとして扱われてしまったのでしょう つまり、{ に対して } の数が足りないってことです。

bakunoyume
質問者

お礼

回答ありがとうございます。 コンパイラできました。 とても助かりました。感謝です。

その他の回答 (3)

  • asuncion
  • ベストアンサー率33% (2127/6289)
回答No.4

そのソースコードを全部見せてください。

bakunoyume
質問者

お礼

回答ありがとうございます。

回答No.2

エラーメッセージの意味は 「宣言やプログラム行の途中で、ソースファイル(input)が尽きて(at end)しまった」 って感じ。 ソースファイルが途中で切れてしまっているって事は滅多に無いので「{が多い」か「}が足りない」かのどちらかが理由で「フォースファイルが途中で切れているのと論理的に同じ状態」になっているのでしょう。

bakunoyume
質問者

お礼

尽きて(at end)だったのですね! 回答ありがとうございました。 コンパイラできました。皆様のおかげです。

  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.1

たぶん、 {    と    }   の対応が、どこかでくずれている可能性があります。

bakunoyume
質問者

お礼

お早い反応ありがとうございました。 コンパイラできました。 回答ありがとうございます。

関連するQ&A

専門家に質問してみよう