Share via


/Zc:externC (使用標準 C++ extern "C" 規則)

編譯 /Zc:externC 程式選項會告知編譯器符合 C++ 標準,並針對宣告為 extern "C" 的函式強制執行一致的參數宣告。

語法

/Zc:externC
/Zc:externC-

備註

編譯 /Zc:externC 程式選項會檢查使用 extern "C" 宣告的函式定義。

此選項 /Zc:externC 可從 Visual Studio 2019 16.3 版開始使用。 此選項未設定時 /permissive- 關閉。 在舊版的 Visual Studio 中,根據預設或指定 , /Zc:externC- Visual Studio 對於比對函式的宣告是寬鬆的 extern "C" 。 選項 /permissive- 會啟用 /Zc:externC ,因此預設會在使用 /std:c++20/std:c++latest 的專案中開啟。 選項 /Zc:externC 必須位於命令列上的選項之後 /permissive-

不相符 extern "C" 的宣告可能會導致編譯器錯誤 C2116 C2733 。 在 C++ 程式碼中,如果您多次宣告函 extern "C" 式並使用不同的參數類型,即使類型具有相同的定義,也會發生錯誤。 此選項 /Zc:externC- 會放寬這項檢查,而且不會產生這些錯誤。

在 Visual Studio 中設定這個編譯器選項

  1. 開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性

  2. 選取 [組態屬性]>[C/C++]>[命令列] 屬性頁。

  3. 將 或 /Zc:externC- 新增 /Zc:externC 至 [ 其他選項: ] 窗格。

另請參閱

/Zc (一致性)