1

前回の質問で、名前を変更した後に今気づいているよりも多くの予約語がcあるため、名前付けの問題がある場所でのコンパイルについて尋ねました。C++C

例: Test.c:

#include <math.h>

int test()
{
    int n = pow(10, 10);
    return n;
}

C++ の math.h は のオーバーロードを定義しているためpow、どれint, intを選択すればよいかわかりません。

その他の問題として次のようなものがあります。

  1. Int はデフォルトの型ではありません。たとえばstatic x = 1;、失敗です
  2. 引数の型は、署名の後、本文の前に定義できますが、定義できcません。c++

などなど、基本的にこのプロジェクトで変換を行うのは簡単な仕事ではありません。あまり変更したくないもう 1 つの理由は、別のCコンパイラでコンパイルする必要があることです。

したがって、私はこれらの問題の解決策を求めているわけではありません。これらの問題は非常に明白であり、この大規模なプロジェクトに時間がかかるだけです。私はc、ビジュアルスタジオで実質的に「そのまま」コンパイルする方法、または決定的な「これは不可能です」という方法を求めています。

私が試したこと:

  1. [Project] -> [Properties] -> [C/C++] -> [Advanced] -> [Compile as C Code] で C コンパイルを強制する
  2. Project->Properties->C/C++->Language->Disable Language Extensions で拡張機能をオフにする
4

1 に答える 1