1

C++ Builder XE4 を使用しています。

コードなどで 2 進数を使用しようとし0b1ています。

以下は私が試したコードです:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    int num = 0b11;
}

上記はコンパイラ エラーを引き起こします。

Unit1.cpp(19): E2141 宣言構文エラー

C++Builder はこのような 2 進法をサポートしていますか?

0x11C++Builder で動作することを確認しました。

0b11また、C++ を使用して IDEOne で使用できることも確認しました。

http://ideone.com/oy4aIZ

4

2 に答える 2

2

整数リテラルのバイナリ表記はC++14 の新機能です。ただし、現時点では、C++14 コンパイラを備えた C++Builder バージョンはありません。

XE4 では、Win32 コンパイラOSX コンパイラは C++11 をまったくサポートしていません (32 ビット C++11 コンパイラは 10.0 Seattle で追加されました)。ただし、Win64 コンパイラは C++11 をサポートしています。

現在の C++Builder コンパイラは、10 進数、8 進数、および 16 進数のみをサポートしています。詳細については、Embarcadero のドキュメントを参照してください:整数定数

于 2016-08-18T01:19:41.500 に答える
1

これをコンパイルするには、C++11 コンパイラを備えた新しいバージョンの C++ Builder が必要です。

于 2016-08-17T11:02:46.863 に答える