1

非常に特殊なプロジェクトでは、C で 16 ビット プログラムを作成する必要があり、MS-DOS で Microsoft QuickC を使用してこのプログラムを作成しています。これで、プログラムの構文は正しいと確信しましたが、プログラムがコンパイルされず、構文エラーがあると見なされます。これは、MS-DOS の C コンパイラが古いバージョンの C を別の構文で使用しているためですか?

#include<stdio.h>

main()
{
   printf("Hello World!");
}

その単純な hello world プログラムでさえ、コンパイルして実行することはできません。

4

2 に答える 2

3

main を int として定義する必要があります

コードを次のように変更します。

  int main() {    // define main as an int returning function

       // your code

       return 0; // Also make sure you have return statement in main
  }

そしてそれはコンパイルされます

規格には次のように書かれています。

1 プログラムの起動時に呼び出される関数の名前はmain. 実装は、この関数のプロトタイプを宣言していません。次の戻り値の型で定義する必要がありintます。

int main(void) { /* ... */ } 

編集:

あなたのコメントからわかりました..あなたは今このエラーを受けています:

   C1024: cannot open include file 'stdio.h'

マイクロソフトからの原因と解決策は次のとおりです。

http://support.microsoft.com/kb/97809

于 2013-11-04T07:55:59.123 に答える