dポイントプレゼントキャンペーン実施中!

ほんとにcの初心者なのですが、
今Tera Termを使って、ソースを書いて、コンパイル、実行をしているのですが、
例えばtest.cというファイルを
gcc test.c

とやってコンパイルして、
a.outというファイルができます。
それを./aとやれば実行できると聞いてやってみたのですができません。
./a.outはできるのですが

なぜなのでしょうか??

A 回答 (2件)

Tera Termを使って接続している先の環境がわかりませんが、GCCは、特に出力ファイル名を指定しない限り、a.outというファイルを出力します。

a.outが出力されたのですから、実行するときはその名前を指定するのが当然です。

一方、Windows上でGCCを使う場合(普通はCygwinかMinGWだと思いますが)、a.outではなくa.exeというファイルが出力されます。そのため、./aとすれば実行することができるのです。

つまり環境によって、同じGCCでもデフォルトの振る舞いが異なります。ですから、質問時には自分が使っている環境を詳しく書いてください。
    • good
    • 0
この回答へのお礼

ありがとうございました

windowsとそれ以外で違うということは知りませんでした。

環境によっては違うということを知っておきます。

お礼日時:2007/05/21 11:14

>それを./aとやれば実行できると聞いてやってみたのですができません。



それは、Cygwinでgccを使ったときの話と混同されているように思います。
上記環境では、defaultでa.exeが生成されるので、./aで、実行可能です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!