StringBufferLen 関数
この関数は、指定した文字列に割り当てられたバッファサイズを取得します。
バッファとは、データを一時的に記憶する場所のことです。最小のバッファサイズは 16になります。
データ型と構成・戻り値
int StringBufferLen(①);
戻り値は、指定した文字列のバッファサイズを返します。
文字列が定数の時は 0を返します。これはバッファーサイズが変更できないことを意味します。
文字列がクライアントターミナルに属する時は -1を返します。これはバッファを変更すると不確定な結果になる可能性があることを意味します。
引数 [1]
StringBufferLen関数は 1個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | string_var | string | - | - | 文字列。 |
使用例
StringBufferLen関数を使った文字列のバッファサイズの取得
指定した文字列のバッファサイズを取得します。途中、指定した文字列に文字列を追加して、再度バッファサイズを取得します。
コード
// StringBufferLen関数を使った文字列のバッファサイズの取得
#property strict
void OnInit() {
long length=5;
string a="a",b="b";
int i;
Print("① ", a, " バッファサイズ:", StringBufferLen(a), " 文字数:", StringLen(a));
for(i=0;i<length;i++) {
StringAdd(a,b);
}
Print("② ", a, " バッファサイズ:", StringBufferLen(a), " 文字数:", StringLen(a));
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)