私は別の言語に書き直すプロジェクトを持っています、そしてそれをするために-私はそれを構築したいと思います。しかし、ビルドしようとすると、「E1012:定数式がサブレンジの境界に違反しています」というメッセージが表示されます。
私はそのようなコードを持っています:
var ForTolkResult : array[0..2000] of char;
ForTolkResult[sizeof(ForTolkResult)-1] := chr(0); // Occurs here
私の観点からすると、ここではすべてが正しいsizeof(ForTolkResult) = 2000 * 1
のでsizeof(ForTolkResult) - 1 = 1999
、配列の範囲内にあります。(しかし、私はPascalを初めて使用します)では、ここで何が問題になっていますか?
Embarcadero C++Builderを介してビルドしようとしています。このエラーがコンパイラのバグである場合、このチェックをオフにするにはどうすればよいですか?