1 2つのポインタと1つの整数を引数にとる。整数は、入力元バッファではなく、出力先バッファの要素数のみを指定する。 2 2つのポインタと1つの整数を引数にとる。整数は、出力先バッファではなく、入力元バッファの要素数のみを指定する。 3 2つのポインタと2つの整数を引数にとる。整数はいずれもポインタの要素数に対応する。 4 1つのポインタと2つのサイズに関する整数を引数にとる。第一の整数引数は、バッファの空きバイト数を指定する。第二の整数引数はバッファに書込むバイト数を指定する。 ポインタと整数を引数にとる関数の呼出しにおいて、与えるサイズはポインタの要素数より小さくなくてはならない。 違反コード (要素カウント) 次に示す違反コード例では、間違った要素数を使って wemcpy() を呼び出している。sizeof 演算子はサイズをバイト数で返すが、memcpy() は wchar_t * に
![ARR38-C. ライブラリ関数が無効なポインタを生成しないことを保証する](https://cdn-ak-scissors.b.st-hatena.com/image/square/7dd958779816f7e1a8006230cb8f8f321ee39ab8/height=288;version=1;width=512/https%3A%2F%2Fwww.jpcert.or.jp%2Fcommon%2Fimage%2Fogp_image.jpg)