2

私はここに新しいです。これが私の問題です:

Intel Atom CPU N550、1.50GHz、2GB RAM を搭載した Windows 7 Home Premium 32 ビット ネットブックに MinGW をインストールしました。

ここで、hello.h という名前のファイルを作成し、次のコマンドを使用して CMD 経由でコンパイルしようとしました: "gcc c:\workspace\c\helloworld\hello.h -o out.exe"

エラーなしでコンパイルされますが、out.exe を実行しようとすると、 「プログラムが大きすぎてメモリに収まりません」というエラーが表示されます。

私がチェックしたこと:

  • Windows PATH 変数に「C:\MinGW\bin」を追加しました
  • 約 1 時間ググってみましたが、初心者なので何が問題なのかよくわかりません。
  • 64 ビット マシンで同じコードをコンパイルしましたが、完全にコンパイルされましたが、64 ビット <-> 16 ビットの問題により実行できません。

誰かが問題が何であるかを理解できれば、本当に感謝しています。ところで、ここに私のhello.hがあります:

#include <stdio.h>

int main(void){
    printf("Hello, World\n");
}

... それでおしまい。返信ありがとうございます。乾杯、ボリス

4

3 に答える 3

3

ファイルの名前をhello.cに変更するだけです

.hファイルはCプログラミングのヘッダーであり、署名などをその中に入れ、メソッドの本体を.cファイルに入れる必要があります。

于 2012-09-23T12:38:48.927 に答える
2

デフォルトでは、拡張子を持つファイルは GCC によってヘッダー.hファイルとして扱われます。通常、ヘッダー ファイルはコンパイラに直接渡されることは想定されていません。それらは実装ファイルに d されるはずです。#include

ただし、GCC は、ヘッダー ファイルが直接フィードされていることを確認すると、特別な機能を実装します。コマンド ラインでファイルを指定すると、GCC はそれを、そのファイルのプリコンパイル済みヘッダー ファイル.hを生成する要求として解釈します。オプションを使用することで、コンパイル済みの結果のヘッダー ファイルに特定の名前を付けるようにコンパイラに強制しました。.h-oout.exe

ただし、結果のファイルは実行可能ファイルではなく、コンパイル済みのヘッダー ファイルです。gpch16 進エディタで開くと、GCC のプリコンパイラ ヘッダー署名であるで始まることがわかります。そのファイルを「実行」しようとすると、無意味な結果になります。(これは基本的に、完全にランダムなファイルの名前を.exe拡張子に変更してから「実行」しようとするようなものです。)

于 2014-05-12T01:11:18.683 に答える
0

この問題を解決するには、C:\TDM-GCC-32\bin%PATH%変数に追加する必要があります。
私にとっては E: にあるので、次のようになります: E:\TDM-GCC-32\bin

手順:
1. TDM-GCC\bin フォルダーのパスをコピーします。
ここに画像の説明を入力

2.コンピューターのプロパティを開く
ここに画像の説明を入力

3.詳細に移動します

4. [環境変数] ボタンをクリックします。
ここに画像の説明を入力

5. 変数 PATH を選択し、[編集] ボタンをクリックします。
ここに画像の説明を入力

6. コピーした TDM-GCC パスを末尾に追加します。セミコロンを忘れないでください。
ここに画像の説明を入力


これらのすべての手順の後、[OK]、[OK]、[適用]、[OK] を押します。そして、あなたは設定されています!

コマンドプロンプトでの結果は次のとおりです。
ここに画像の説明を入力

于 2018-10-06T16:43:22.647 に答える