4.37 strlcpy()

string.h で定義される strlcpy() 関数は、最大 size-1 文字を、NUL で終わる文字列 src から dst にコピーします。

この関数は、長さだけでなくバッファの完全なサイズを取得し、size が 0 より大きい場合には、結果を NUL で終端します。size 値には、NUL のためのバイトを含めて下さい。
strlcpy() 関数は、長さに制限がない場合にコピーされる文字列の長さの合計を返します。割り当てられている長さが十分かどうかによって、実際にコピーされる文字列の長さと等しい場合も、等しくない場合もあります。どれくらいの長さが必要かを調べるために、まず strlcpy() を呼び出し、長さが不十分な場合は十分な長さを割り当て、再度 strlcpy() を呼び出して必要なコピーを行うことができます。
この関数は、多くの C ライブラリで一般的な BSD 由来の拡張です。

構文

extern size_t strlcpy(char *dst, const char *src, size_t size);
非機密扱いPDF file icon PDF 版ARM DUI0475KJ
Copyright © 2010-2014 ARM.All rights reserved.