サポート情報
テキストエディタ MIFES 11

strncpy() でバッファに残っている文字列が復活してしまう

公開日:2023年2月10日

■回答

strncpy() は、strcpy()と同様に文字列の複写を行いますが、文字列の終端指定(内部的には\0の追加)は行われません。
これにより状況によってはバッファに残っている文字が復活する場合があります。
strncpy() の前に対象の配列変数を初期化することでこの問題は解決できます。

【記述例】
@8=0 ;0〜2047の要素をクリアする
while @8 < 2048
@str1[@8]=0
@8=@8+1
wend

前のページに戻る
MIFES 11 製品情報
テキストエディタ MIFESシリーズ製品情報