はじめに
Borland 系の C / C++ コンパイラには __TURBOC__
という定義済みマクロがあり、最初の Borland Turbo C から 最新版の Embarcadero C++Builder に至るまで一貫して値を返します。
__TURBOC__ 定義済マクロ
__TURBOC__
及び __BORLANDC__
の値は次の通りです。
Version | __TURBOC__ | __BORLANDC__ |
---|---|---|
Turbo C 1.0 | 0x0001 | |
Turbo C 1.5 | 0x0150 | |
Turbo C 2.0 (IDE) | 0x018D | |
Turbo C 2.0 (TCC) | 0x0200 | |
Turbo C 2.01 | 0x0201 | |
Turbo C++ 1.0 | 0x0295 | |
Turbo C++ 1.01 (Turbo C++ 2nd Edition) | 0x0296 | |
Borland C++ 2.0 | 0x0297 | 0x0297 |
Turbo C++ Win 3.0 | 0x0400 | |
Borland C++ 3.0 | 0x0400 | 0x0400 |
Turbo C++ DOS 3.0 | 0x0401 | |
Borland C++ 3.1 | 0x0410 | 0x0410 |
Turbo C++ Win 3.1 | 0x0410 | 0x0410 |
Borland C++ 4.0 | 0x0452 | 0x0452 |
Borland C++ 4.5 | 0x0460 | 0x0460 |
Turbo C++ Win 4.5 | 0x0460 | 0x0460 |
Borland C++ 5.0 | 0x0500 | 0x0500 |
Borland C++ 5.02 | 0x0520 | 0x0520 |
C++Builder | 0x0520 | 0x0520 |
C++Builder 3 | 0x0530 | 0x0530 |
C++Builder 4 | 0x0540 | 0x0540 |
C++Builder 5 | 0x0550 | 0x0550 |
Borland C++ 5.5 1 | 0x0550 | 0x0550 |
Borland C++ 5.51 1 | 0x0551 | 0x0551 |
C++Builder 6 | 0x0560 | 0x0560 |
C++Builder X (Borland C++ 5.64) | 0x0562 | 0x0562 |
C++Builder 2006 (BDS 2006) | 0x0570 | 0x0570 |
Turbo C++ 2006 | 0x0570 | 0x0570 |
C++Builder 2007 | 0x0590 | 0x0590 |
C++Builder 2007 UPD1 | 0x0591 | 0x0591 |
RAD Studio 2007 | 0x0592 | 0x0592 |
RAD Studio 2007 DEC UPD | 0x0593 | 0x0593 |
C++Builder 2009 | 0x0610 | 0x0610 |
C++Builder 2010 / UPD1 | 0x0620 | 0x0620 |
C++Builder 2010 UPD2 | 0x0621 | 0x0621 |
C++Builder XE | 0x0630 | 0x0630 |
C++Builder XE UPD1 | 0x0631 | 0x0631 |
C++Builder XE2 | 0x0640 | 0x0640 |
C++Builder XE3 / UPD1 | 0x0650 | 0x0650 |
C++Builder XE3 JAN UPD(BCC32 & BCCOSX) | 0x0651 | 0x0651 |
C++Builder XE4 (BCC32 & BCCOSX) | 0x0660 | 0x0660 |
C++Builder XE5 | 0x0670 | 0x0670 |
C++Builder XE6 | 0x0680 | 0x0680 |
C++Builder XE7 | 0x0690 | 0x0690 |
C++Builder XE8 | 0x0700 | 0x0700 |
C++Builder 10 Seattle | 0x0710 | 0x0710 |
C++Builder 10 Seattle UPD 1 (BCC32) | 0x0711 | 0x0711 |
C++Builder 10.1 Berlin | 0x0720 | 0x0720 |
C++Builder 10.2 Tokyo | 0x0730 | 0x0730 |
Embarcadero C++ Compiler 2 | 0x0730 | 0x0730 |
C++Builder 10.3 Rio | 0x0740 | 0x0740 |
C++Builder 10.4 Sydney | 0x0750 | 0x0750 |
C++Builder 11 Alexandria | 0x0760 | 0x0760 |
C++Builder 11 Community Edition 2 | 0x0760 | 0x0760 |
C++Builder 12 Athens | 0x0770 | 0x0770 |
製品によっては __BCPLUSPLUS__
, __CODEGEARC__
, __TCPLUSPLUS__
という定義済マクロもあります。
See also:
- 定義済みマクロの C++ コンパイラ バージョン (DocWiki)
- Borland version checking (delphigroups.info)
- Borland 言語製品コンパイラバージョン一覧 (ohmix.net / Room y.ohm)
おわりに
何かの役に立つ事があるかもしれませんね。
See also:
- Turbo C (Wikipedia: en)
- Turbo C++ (Wikipedia: en)
- Borland C++ (Wikipedia: en)
- C++Builder (Wikipedia)