文字列の範囲オーバーフロー
日付 | 2010/01/19 |
---|---|
ID | 75975 (英語原文参照) |
バージョン | 11.5 |
プラットフォーム | Mac & Win |
4D 2004以前のバージョンでは、文字列のサイズを超えるインデックスを指定することができました。
C_TEXT($myVariable) C_TEXT($myChar) $myVariable:="Hello World" $myChar:=$myVariable[[13]]
この場合、$myCharには空の文字列が代入され、4Dは実行を続行しました。4D v11 SQLでは、上記のコードでシンタックスエラー53「インデックス範囲を超えています。」が返されます。このようなエラーは事前に文字列のサイズを計算するか、ON ERR CALLでトラップすることができます。