• ベストアンサー

cygwin・viで

掲示板などで貼られているC言語の文章を コピペしてコンパイルしてみたいと思ったのですが 「コピペ」するにはどういうコマンドを打ち込めばいいのでしょうか? コピペのやり方が分からないから掲示板などで貼られているC言語の文章を実行することができないのです・・・。 また、この文章は玄人さんから見れば絶対おかしい文章だと思いますが、どういう風に表現していいか分からなかったのでお許しを・・・。

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

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

初心者さんだという前提で… > $ gcc -o test test.c > これを打ち込んだあとに > (ユーザー名)@~~~~~ > と最初の状態?に戻ってしまい、 > $testが実行できません  「gcc -o test test.c」と打ち込んで実行すると、正常にコンパイルできれば何も出力はされません。 あなたが言う「最初の状態」に戻るのが正常です。 その次に、「./test」と打ち込んでリターンを押すとそのプログラムが動作します。「test」とだけ打ち込むと「/usr/bin/test」というシステムに備わったプログラムの方が動くと思われるので、敢えて「今自分のいるディレクトリにある(システムのものではない)testを実行しなさい」という意味で、先頭に「./」を付けます。(「test」という名前のプログラムを作って、うまく動かなくて…というのは初心者がよく陥る罠です。私も最初ハマった時は原因がわからなくてうんうん唸ってました。)

akimottyann
質問者

お礼

動きましたっ! んー・・・「a.out」で教わったのですが 「./test」を打ち込むのですね。 自分でも勉強して頑張りますね。 ありがとうございました。

その他の回答 (1)

  • rentahero
  • ベストアンサー率53% (182/342)
回答No.1

無理にviを使わなければならない理由があるようにも思えないのですけど。 cygwinのbashプロンプトで、windows用のプログラムは動きます。 だから、 $ notepad test.c とすれば、メモ帳が立ち上がりますので、そこにコピペして保存すれば、ファイルができます。 そのうえで $ gcc -o test test.c $ test ...実行結果 という手順でいけると思います。

akimottyann
質問者

補足

確かにviにこだわるは必要ないですね・・・。 メモ帳が立ち上がりコピペできました。 しかし $ gcc -o test test.c これを打ち込んだあとに (ユーザー名)@~~~~~ と最初の状態?に戻ってしまい、 $testが実行できません  (続けてtestと打ち込めないという意味です。) これも非常に伝わりにくいと思います・・・

関連するQ&A

  • Cygwinのエディタについて

    Cygwinのエディタのviで、c言語のプログラムを作成し、gccでコンパイルすると、a.exeというファイルができます。私は今まで、Linuxのviでc言語のプログラムを実行するときは、a.outを使っていました。 Cygwinのviでもa.outを使うにはどう設定すればよいのでしょうか?

  • cygwinでのコンパイルについて

    最近、c言語に触れたばかりの入門者です。 入門書にコンパイルの方法としてcygwinが書かれていたので インストールをしてpassを変更しました。 しかし、コマンドでコンパイルをするとアクセス拒否となってしまい ます。gccと入れるだけでもアクセス拒否となります。 二度アンインストールとインストールを繰り返しましたが やはりアクセス拒否となります。 XPとVISTAのOSで試したのですが、どちらも同様の症状になります。 当方のPCは管理者以外のユーザーは入っていないのですが どうしてそうなるのかが理解できません。 どなたか詳しい方がいらっしゃいましたら 教えていただけないでしょうか?

  • cygwin1.dll を必要としないCのexeファイルを作りたいです

    はじめまして、shigure2005と申します。 私は普段UNIX上でC言語のプログラムを書いているのですが、 わけあってWindows上で動くようにする必要が出てきました。 そのプログラムをそのままcygwinでコンパイルしたところ コンパイルでき、実行ファイルも問題なく実行できたのですが、 このままですとcygwin1.dllが必要になってしまいます。 ですので、これがなくてもすむような別のコンパイル方法を 教えていただければと思ったしだいです。 過去ログを探って、MinGWについては試してみたのですが、 コンパイルは問題なく通るのに、なぜか実行ファイルを 実行すると、うまく起動できません。Mingwは以下のファイルを ダウンロードしてインストールしました。 mingw-runtime-3.8.tar.gz mingw-utils-0.3.tar.gz MinGW-4.1.1.exe w32api-3.3.tar.gz binutils-2.15.91-20040904-1.tar.gz mingw32-make-3.80.0-3.exe PATHは「C:\mingw/bin;C:\cygwin/bin」の順に通していて、 コマンドプロンプトでコンパイルし、コンパイル後、 コンパイルに用いたdllがcygwin1.dllでないのを確認して います。また、helloworldなど簡単なプログラムなら、 Mingwでもうまくコンパイルできてます。cygwinとMingwで コンパイル性能に大きな差などがあるのでしょうか? また、cygwinだけでも、Mingw-runtimeをインストール すれば、cygwin1.dllを必要としない形式にコンパイル できるという話を聞いたのですが、ご存知の方が いらしたら教えてください。 どうぞよろしくお願いします。

  • cygwinでのgcc

    畏れ入ります。 UNIXどタコですm(__)m 最近CYGWINで簡単にUNIXが体験できるということで早速インストールしました。 KDEとGNOME無事起動しました。 で、実は図書館で「Xlibで簡単プログラミング」というのを借りてきたので、ちょっと遊んでみようと思いとりあえずc言語がコンパイル、実行できるかどうかやってみたのですがうまくいきませんでした。 #include <stdio.h> int main(){ printf("HelloWorld \n"); } のようなプログラムをvimで作成するところまではうまくいきました。homeディレクトリに作成されていました。 それで gcc hello.c とやればよいのですよね?! 実は文字がたくさん出て、コンパイルできたのかどうか・・・?そして、a.outというファイルができるのですよね?間違っていますでしょうか? とりあえず、できていません・・・(>_<) ./a.out としても、no fileです・・・ なにか間違っていますでしょうか?

  • コンソールアプリ エンターを押さないと戻ってこない

    VisualStudio2005でコンパイルしたコンソールアプリですが、実行後、エンターを押さないとコマンドが戻ってきません。 何か対策でもあるのでしょうか? MSのC言語特有に何かがあるのでしょうか?

  • 初心者なのでご勘弁を!

    馬鹿な質問かもしれませんが、C言語で|a+b|<=cを入力してコンパイルし、 実行しようとしてもエラーが出て実行できません。C言語では絶対値のプログラム は存在しないのでしょうか?もし存在するなら教えてください。

  • Cygwin でのC言語(初心者)

    今年からプログラミング(C言語)を学び始めた大学1年です。 最近になって自宅のパソコンでもプログラミングを練習したい と思い、Cygwinをダウンロードし学校と同じemacsを使っています。 ですが学校で習っているコマンドと少し違うところがあるのです 文章をコピーするときに、学校のではまずCTRLとスペースキーで マークしESCとWキーでコピーするのですが、家のではこのコマンドではマークできないのです。 Cygwinでマークする方法と、この原因が分る方は他にもどういった点で コマンド方法が違うのか教えてください。 プログラムを実行するときの./a.outも家では./aだけなので… 回答よろしくお願いします<m(__)m>

  • Cygwinでコンパイルできません。

    CygwinをすべてDefaultでインストールしました。 テキストエディタとしてTeraPadを利用しています。 テラパッドでtest.cというファイルをつくり、 gcc -o test test.c でコンパイルしたのですが gcc:test.c:No such file or directory gcc:no input files と表示されます。 正常にコンパイルするにはどうしたらいいのでしょうか? 自分はC言語について勉強したばかりでくわしくないので、この質問を書いていて言葉足らずなところがあり説明不十分かもしれませんが、よろしくお願いします。

  • CygwinからVisual C++へ

    Cygwinでコンパイルしていたプログラムを、 Visual C++の cl コマンドでコンパイルしたいです。 あるプログラムを書きまして、Cygwinをインストールし、 [block.rc] BLOCKS BITMAP "block.bmp" という内容のリソースファイルを作成して、 windres block.rc -o block.o gcc -mwindows aaa.cpp block.o でちゃんとコンパイルできていました。 上記のように Visual Studio 2010 のVisual C++でコンパイルするにはどうしたらいいのかわかりません。 cl aaa.cpp block.o とやっても cl -mwindows aaa.cpp block.o とやっても、コンパイルできませんでした。 -mwindowsに代わるclコマンドのオプションを探してはみてみたものの、 -GA windowsアプリケーション用の最適化を行う というものを見つけたのでやってみましたがだめでした。 どなたか、コンパイルのアドバイスを下さい。

  • 恥ずかしい質問なんですが…

    c言語を勉強しています。コンパイルするときにコマンドプロンプト(XP)を使いますが実行結果が長い場合、コマンドプロンプトに表示させると上の方が切れてしまいます。プロパティで画面の大きさとか変更してもうまくいきません。どうしたら良いんでしょうか?

専門家に質問してみよう