
Cpad for Borland C++Compilerという統合開発環境を使ってC/C++を書いています。
OSがvistaで32ビットのパソコンでは普通にできたのですが、OSが7で64ビットの新しいパソコンでは実行してもすぐにコマンドプロンプトが閉じてしまいます。
なにが原因なのでしょうか?OSでしょうか、それともbit数でしょうか。
また、すぐ消えないようにするためにはどのようにすればいいのですか。いろいろな回答を見たのですが、どれも初心者の私には言葉足らずで理解できませんでした。詳しく教えていただけるとありがたいです。よろしくお願いします。
No.4ベストアンサー
- 回答日時:
回答したついでになりますが、こういう場合はgetch関数を使うのがC言語の慣習でもあります。
getchでコンパイルが通らなければ_getch(最初にアンダーバー)です。
どっちで通るかはコンパイラが実装しているC規格によって変わります。
---------------------------------
#include <stdio.h> /* printf */
#include <conio.h> /* getch */
int main(void)
{
printf("before getch()\n");
getch(); /* ここで一旦プロンプトが止まる。Enterキーで再始動。 */
printf("after getch()\n");
getch(); /* ここでまたプロンプトが止まる。 */
return 0;
}
---------------------------------
なるほど!こういう「これ!」っていう回答を求めていました。
ソースコードまでご丁寧にありがとうございます。
回答ありがとうございました。
No.5
- 回答日時:
No1です。
mainが、printf("Hello World!\n"); だけのプログラムで、Explorerからexeファイルをダブルクリックしたのなら表示後一瞬でコマンドプロンプトが閉じるのが正常です。
Vistaで、閉じなかったのであればおかしいですね。他に何か表示されていませんか?
>mainが、printf("Hello World!\n"); だけのプログラムで、Explorerからexeファイルをダブルクリックしたのなら表示後一瞬でコマンドプロンプトが閉じるのが正常です。
Exploreからexeファイルをダブルクリックはしていません。cpad(C言語の統合開発環境)から実行してすぐに消えるのです。コードは以下
#include <stdio.h>
int main()
{
printf("Hello, World! (C) \n");
return 0;
}
他になにか表示されているのかと思ってみようと思ったのですが、すぐ消えるので文章が見れませんでした。。
No.3
- 回答日時:
すみません。わざわざURLを張っていただいたのですが、いまいちどこを参照すればいいのかよくわかりません。。
とりあえず、visual basicを使うときはブレークポイントというのをretun 0のところに使えば止まるというのはわかりました、ありがとうございます。
No.2
- 回答日時:
>> すぐ消えないようにするためにはどのようにすればいいのですか。
1. [スタート]-->[すべてのプログラム]-->[アクセサリ]-->[コマンドプロンプト]を開く
2. 出てきたコマンドプロンプトに、作成したExeをドラッグアンドドロップ
3. コマンドプロンプト上にExeのパスが入力されるのでEnterキー
この方法ならすぐにコマンドプロンプトは消えません。
メッセージなどが表示されていれば、この方法で見ることができます。
なるほど!
プログラムが保存されているフォルダまで移動して、そのあとに
bcc32 test.cpp
でコンパイルをしてそのあとに
test(.exe)
で実行できるのですね!この場合だったら確かに止まらずにちゃんとハローワールドが見れました。ありがとうございました。
No.1
- 回答日時:
>なにが原因なのでしょうか?OSでしょうか、それともbit数でしょうか。
操作を間違っている、もしくは書いたプログラムがおかしいわけですが、何がしたくてどうしたのか不明なので、何が正解かとかまでは言えません。
他人が再現できる程度に詳しく書けば正しいアドバイスが得られるでしょう。
vistaでも7でも同じハローワールドのプログラムを打って、設定の仕方も全く同じようにやったのでそこでの原因ではないと思ってあえてそこは書きませんでした。
自分なりに考えてOSかbit数が原因なのかなって考えてます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ノートパソコン cipher でデータが消えない 4 2022/06/01 14:58
- UNIX・Linux VirtualBox ゲストOSにPC内蔵HDDのパーティションをマウントする方法は? 2 2023/05/06 22:52
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- Android(アンドロイド) androidタブレットに写真 6 2023/04/15 23:59
- CPU・メモリ・マザーボード デスクトップPCのOS(C:)の空き領域がどんどん減ります。 9 2022/12/12 09:24
- BTOパソコン テレビのネット接続について 2 2023/05/05 23:26
- システム 外付けHDDの初期化について 4 2023/03/05 20:00
- Windows 10 explorerをedgeで開く方法 2 2022/06/05 14:59
- Windows 10 Apexを起動するとタスクマネージャーが閉じる現象について 1 2022/07/16 18:31
- その他(ブラウザ) MicrosoftEdgeレガシー版を最新版にアップデートする方法を教えてください。パソコンはヤフオ 1 2023/05/19 19:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
高(1)男子 初めてC言語でコー...
-
C言語で 選択肢: |?| |?| |?| 1...
-
C++
-
ダブルポインタで2次元配列を作成
-
Cの九九を表示するプログラム...
-
両替プログラムなど
-
文字コードについて
-
C&C++、計算結果を表示する
-
strcmp
-
至急!!!! C言語のこのプロ...
-
行列の積について
-
10個出力で改行したいのですが...
-
[緊急]bcc developerについての...
-
visualC++を使って、
-
テキストカーソル位置の取得
-
printf()関数の第一引数の文字...
-
C言語の余剰演算子について
-
正の実数Aを求めよまた、関数...
-
scanfで正しい値を入力できない
-
DOS画面でテキストカーソルの位...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
10個出力で改行したいのですが...
-
c言語で2000年以降カレンダーを...
-
c言語でAからZまでを表示する...
-
【C】fizzbuzzのトリッキーなコ...
-
strcmp
-
printf で二進表示を行いたい。
-
【C言語教えてください】sin波...
-
コマンドラインに出力した文字...
-
8人分のテストの点数を入力し、...
-
コンパイルエラーについて
-
CTRL+Dでループを抜けるには
-
(C言語)めちゃくちゃな値にな...
-
cshの文字列操作(0埋め)
-
テキストカーソル位置の取得
-
コマンドプロンプトがすぐ消える
-
printfの出力内の文字をdefine...
-
scanfに文字が入力されたときに...
-
台形の面積を求めるプログラム
-
改行について 1行に何個かづ...
-
WM_CLOSEで閉じれないウィンド...
おすすめ情報