• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:コンパイラソフトがmsysなので判りません!?)

コンパイラソフトのエラーについて

このQ&Aのポイント
  • コンパイラソフトのmsysでエラーが発生して動作しないため、アレンジ方法が分からず理論の勉強をしています。
  • プログラムの実行結果として、ストライク1回、ボール1回入力した場合にどのような画面が表示されるのか疑問です。
  • msys用にアレンジしたプログラムはどのようなものになるのか気になります。

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

  • ベストアンサー
回答No.3

main()を書いたり、printf(), scanf()使っているのでそれらを宣言するかstdio.hをincludeするかするなどすれば動かせるかと思いますよ。 #include <stdio.h> int main( void ) { int judge; int strike = 0; int ball = 0; while( strike < 3 && ball < 4 ){ printf( "ストライク=1 or ボール=2 ?" ); scanf( "%d", &judge ); if( judge == 1 ) strike++; else if( judge == 2 ) ball++; printf( "%dストライク,%dボール\n\n", strike, ball ); } if( 3 == strike ) printf( "3振\n" ); if( 4 == ball ) printf( "4球\n" ); return 0; }

gogatunijyuku
質問者

補足

ご回答ありがとうございました。 MSYSを使ってMinGWでコンパイルしましたが以下のエラーが出ました。 $ gcc a.c -o a.exe c:\MinGw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot open output file a.exe: Permission denied collect2: ld returned 1 exit status 以上よろしくお願いいたします。

その他の回答 (3)

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.4

> cannot open output file a.exe: Permission denied 権限不足でa.exeというファイルを書き出せないというエラーメッセージですね。 a.cを書き込み・編集できているはずなのにa.exeは書き込めないのは難解です。 そのディレクトリで ls -la を実行したらどうなりますか? 既にa.exeというファイルがそこに存在している場合は一度それを消してからやり直してみてください。 a.exeが存在していない場合は、書き込みができる他のディレクトリにa.cをコピーして、そこへcdで移動してからもう一度試してください。

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

質問者は初歩の初歩、Hello Worldのプログラムを書いたり実行したりしたことはないのでしょうか? もしあれば、質問文に書かれているのは完全なプログラムではなくその断片だということが分かると思います。ゆえに、msysだろうが他のCコンパイラだろうが、質問文に書かれている内容だけではコンパイル・実行できず、「msys用のアレンジ」というものは存在しません。 ついでに書くなら、私の知っているmsysならばそれは「コンパイラソフト」ではありません。 > 以上プログラムで、ストライクを1回、ボール1回入力した場合、出力画面にどん画面が出てくるのでしょうか? ストライク=1 or ボール=2 ?1 ストライク=1 or ボール=2 ?2 ストライク=1 or ボール=2 ? と出るでしょう。

gogatunijyuku
質問者

補足

ありがとうございます。 自分なりに理解を深めています。  お待ちください^^

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

これがプログラムの一部だとすると、この程度の内容なら、大抵のCコンパイラなら、変更の必要なくコンパイルできます。msysで使うgccでも、Visual C++でも、Borland Cでも、です。 まさかと思いますが、ここに書いたので全部、ということは無いですか? ちゃんと、main関数として定義してありますか? > エラーがでて動きません 具体的にどんなエラーなのでしょうか? エラーメッセージを読んで、原因を考えて、修正して、次回からは同じエラーを出さない、出てもすぐ直せるようにする、というのが、プログラミング上達のコツの一つです。

関連するQ&A

専門家に質問してみよう