質問

ペルスCを使っています。このコードをコンパイルすると:

#include <windows.h>
#include <stdio.h>

void main(void)
{
   printf("Hello World");
}
.

このエラーを得ます:

D:\Program Files\PellesC\Include\Win\basetsd.h(53): error #2001: Syntax error: expected ';' but found 'INT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(53): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2120: Redeclaration of '__int64', previously declared at D:\Program Files\PellesC\Include\Win\basetsd.h(53); expected 'int' but found 'unsigned int'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): error #2001: Syntax error: expected ';' but found 'UINT64'.
D:\Program Files\PellesC\Include\Win\basetsd.h(57): warning #2099: Missing type specifier; assuming 'int'.
D:\Program Files\PellesC\Include\Win\winnt.h(558): fatal error #1014: #error: "No target architecture".
.

あなたの助けをありがとう。

役に立ちましたか?

解決

windows.hPellesCを使用するには、次のようになります。

  • プロジェクト - >プロジェクトオプション - >コンパイラ
  • チェック:Microsoft Extensions を有効にする

他のヒント

他のコンパイラ(例えばVisual Studio)が常に定義されるいくつかの#definesが見つかりません。それらは、プロセッサアーキテクチャ、OSバージョン、SDKバージョンなどに関する重要な情報を提供します。

彼らのコンパイラが何を定義しても同じマクロを定義しているマイクロソフトのドキュメントを検索するのが最善です。

このページは良い出発点である可能性があります。

  1. int main(void)を使用してプログラムを初期化し、void main(void)
  2. 最後のブラケットの直前にreturn(0);のReturnステートメントを欠いています。プログラムがいつ実行を停止するかをわからないため、これを含める必要があります。

    次のを実行してください

    1. プルダウンメニューバーからProjectを選択し、次にスクロールして `プロジェクトオプションを選択します。
    2. Compilerタブを選択し、Calling conv:ボックスに_cdeclが選択されていることを確認します。
    3. linkerタブをクリックし、[subsystem]ボックスに型がConsoleに設定されていることを確認します。

      もう一度構築してみて、何が起こっているのか見てみましょう!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top