
CPad for LSI C-86というC言語のフリーソフトのコンパイラーを使用しています。OSはWindows Vistaです。
#include <stdio.h>
int main()
{
printf("Test Program")
}
という単純なプログラムを実行すると、「名前を付けて保存」になってしまい、適当にファイル名を付けて保存すると、
「コンパイルに失敗しました。ファイル”適当なファイル名”は存在しません。」
というコメントが表記されてしまって、プログラムの実行ができません。どなたか原因がわかる方、教えてください。よろしくお願いします。
No.5ベストアンサー
- 回答日時:
>ファイル"C:Users\owner\Desktop\フリーソフト\Test.exe"は存在しません」
フォルダ名「フリーソフト」が悪さをしているのかもしれません。
ファイルシステムそのものは、そういうロングファイルネームに対応していても、
コンパイラが認識できていないようです。
英数字8文字以内のフォルダにソースファイルを保存するように
変更してみてはいかがでしょうか?
No.6
- 回答日時:
とりあえず、ちょっとだけ用語を説明しておきます。
エディタ:メモ帳(notepad)などのテキストエディタのこと。テキストファイルを作る。
コンパイラ:プログラムの書かれたテキストファイルを読み込んで、コンピュータが実行する、実行ファイル(*.exe)を作る。
CPadはエディタです。LSI C86 3.30試食版 がコンパイラです。
CPadはプログラム開発用のエディタです。コンパイラにテキストファイルを渡したり、コンパイル時に問題が起きると、エラーメッセージを取得してソースの位置を示したりできます。
コンパイルするとき、コンパイラ自体にはファイルを渡す必要がありますので、エディタは一度ファイルを保存する必要があります。これが最初の保存となる場合(新規ファイルの場合)、保存先とファイル名を求められるでしょう(つまり「名前をつけて保存」)。
さて、CPadのメッセージはウィンドウ下部のメッセージ領域に表示されたと思いますが、他にメッセージは出ていないでしょうか?
おそらく、
~何らかのメッセージ~
コンパイルに失敗しました
ファイル"C:Users\owner\Desktop\フリーソフト\Test.exe"は存在しません
という感じになっていると思います。
見つからないファイル名はexe(実行ファイル)であること、「コンパイルに失敗しました」とは別の行にあるなら、別のメッセージであること、そしてこの手のメッセージは、通常はより細かいものが先に表示されることから、最後のファイルがないというメッセージはコンパイラのメッセージではなく、エディタのメッセージと考えられます。
試しに、「コンパイル」でコンパイルだけしてはどうでしょう。
最後のファイルが存在しませんというメッセージが消えるのではないでしょうか。
なお、コンパイルに失敗する原因は「コンパイルに失敗しました」よりも先に表示されているメッセージで示されます。
一度のコンパイルのメッセージ全体の一般的な並びは、
コンパイラの名称やバージョン
コンパイルの対象ファイル名
警告メッセージ/エラーメッセージ
コンパイルの結果
となります。
この回答への補足
「コンパイルに失敗しました
ファイル"C:Users\owner\Desktop\フリーソフト\Test.exe"は存在しません。」以外のエラーメッセージは出てきませんでした。、実行後、ソースファイルとテキストファイルが作られていました。
コンパイルだけをおこなった場合、メッセージの欄にcannnot excute…LCC.EXEといった記述がありました。
フリーソフトをfreesoftに変えて実行したところ、前述の二つのファイルとEXEの実行ファイルがあり正常に動作していました。
要するに、一度書いたプログラムを保存し、コンパイラに読み込ませて実行させているということなのでしょうか。
だとすると、テキストファイルとソースファイルの二つを作る意味というのはどういうことなのでしょうか?
質問とは関係ありませんが、教えていただけるとありがたいです。
No.4
- 回答日時:
>エラー内容が「見つかりません。
」コンパイル時のエラーメッセージの全文を、
コピー&ペーストで正確に掲載してください。
この回答への補足
エラー内容は
「コンパイルに失敗しました
ファイル"C:Users\owner\Desktop\フリーソフト\Test.exe"は存在し ません」
です。コピーはできないようになっていましたが忠実にエラー内容をうつしました。
ちなみに保存ファイル名はTest.cにしました。
No.3
- 回答日時:
>実行というのは「コンパイル&実行」というものをクリックしたということなのですが。
このときに、最初の投稿にあったとおり「名前を付けて保存」になったのですか?
そのとき、
>適当にファイル名を付けて保存すると、
どういう風に適当だったのでしょうか?
LSI C試食版は16ビット時代のひじょうに古いコンパイラで、
今では普通に使っているロングファイルネームに対応していません。
「8文字以内の英数字.c」という形式でソースファイルを保存する必要があります。
この回答への補足
おっしゃる通りで「名前を付けて保存」になりました。
ファイル名はabc.cとかtest.cとかにしました。
エラー内容が「見つかりません。」ということは、保存する場所が決まっているのでしょうか?
No.2
- 回答日時:
>CPad for LSI C-86というC言語のフリーソフトのコンパイラーを使用しています。
CPad for LSI C-86 は、コンパイラではありません。
LSI C-86 というコンパイラを使ったプログラム開発を支援するためのソフトウェアです。
CPadの「実行」というのは、おそらく、
・LSI C-86 によるコンパイル、実行ファイルの作成
・前項で作成した実行ファイルの実行
という2段階のことを称しているのではないかと思います。
ここで、質問時に提示されたソースを見ますと、
>printf("Test Program")
最後にセミコロンがありません。
このため、2段階のうちの第1段階である、コンパイルに失敗しているのではないでしょうか。
この回答への補足
早速の回答ありがとうございます。セミコロンを入力したのですが同様の結果になりました。
詳細を説明しますと、CPad for LSI C-86のファイルを展開して実行しますと「コンパイラのパス」が指定されます。なので、「LSI C86 3.30試食版」というフリーソフトのBINファイルに入っているLCC.EXEというものを指定しました。
私は間違えていたようで、コンパイラは「LSI C86 3.30試食版」だと思います。
そうすると、プログラムが書き込める画面が開かれて先ほどのプログラムを打ち込み、実行しました。
実行というのは「コンパイル&実行」というものをクリックしたということなのですが。よろしくお願いします。
No.1
- 回答日時:
>という単純なプログラムを実行すると
このとき、どういう手順を踏みましたか?
メニューのこれを選択してからこれを押した、というように、
具体的に教えてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- C言語・C++・C# C言語 3 2022/10/04 15:07
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2023/01/20 14:36
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- C言語・C++・C# 3×3のラテン方陣をつくるプログラムを作成したのですが、(↓) #include <stdio.h> 5 2023/07/10 01:53
- Excel(エクセル) [クイックアクセスツールバー]の設定ファイルの格納場所について、 5 2023/04/21 14:43
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
このQ&Aを見た人はこんなQ&Aも見ています
-
コンパイル失敗と表示されましたがどこが間違っているでしょうか?
C言語・C++・C#
-
コンパイルに失敗しました、と出て実行出来ません
C言語・C++・C#
-
bcpadがうまく実行できないのですが・・
C言語・C++・C#
-
-
4
cpadでプログラムが実行できない
C言語・C++・C#
-
5
bcpadでコンパイルできない
フリーソフト
-
6
コンパイラについて
C言語・C++・C#
-
7
bcpadのコンパイラのインストールをしようとしているのですがうまく行きません freecomman
C言語・C++・C#
-
8
コンパイルするときに、ファイルが見つからないと表示されてしまいます。
C言語・C++・C#
-
9
bcpadのコンパイラのインストール方法がわかりません 教えてください
XML
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
C#で char型とstring型の比較で...
-
ビルダーとは何ですか?
-
#ifdefの意味、使用方法が載っ...
-
コンパイル時に「out of memory...
-
C++のvectorについて教えてくだ...
-
math.hに含まれる関数が使えない
-
gccでc++プログラムをコンパイ...
-
「インクルードファイル 'pthre...
-
C# exeファイルのダブルクリック
-
シリアル通信の受信待ちについて
-
gccでの制作物の著作権
-
関数の書き方と使い方
-
c言語です コンパイルした時に...
-
vba コンパイル
-
共有ライブラリの内容確認について
-
64ビットのlinuxで32ビットメモ...
-
python エラー
-
エクセルのエラーメッセージ「4...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アプリケーションのDLLファイル...
-
<unistd.h>をVisualStudioでつ...
-
共有ライブラリの内容確認について
-
すべてのリビルド: 0 正常、 0 ...
-
C言語で作ったらWindowsでもMac...
-
64ビットのlinuxで32ビットメモ...
-
gcc バージョン違いによるコン...
-
[COBOL] ソースの復帰
-
C#で char型とstring型の比較で...
-
gccでc++プログラムをコンパイ...
-
実行後にコンパイルに失敗しま...
-
ビープ音が鳴りません・・・
-
シリアル通信の受信待ちについて
-
VB ネイティブコンパイルについて
-
Cygwinで使用しているgccをダウ...
-
同じEXE・同じファイルで解析結...
-
math.hに含まれる関数が使えない
-
Verilog_HDLでのdefineとifdef
-
プレコンパイルの意味を教えて...
-
#If True Then の # って何??
おすすめ情報