_memccpy
バッファーから文字をコピーします。
構文
void *_memccpy(
void *dest,
const void *src,
int c,
size_t count
);
パラメーター
dest
ターゲットへのポインター。
src
ソースへのポインター。
c
コピーする最後の文字。
count
文字数。
戻り値
文字 c
がコピーされた場合、 _memccpy
は文字の直後にある dest
の char へのポインターを返します。 c
がコピーされていない場合は、NULL
を返します。
解説
_memccpy
関数は、src
の 0 個以上の文字をdest
にコピーし、文字c
がコピーされたとき、またはcount
文字がコピーされたときに、どちらか早い方に停止します。
セキュリティに関するメモ コピー先のバッファーのサイズがソース バッファー以上であることをご確認ください。 詳細については、「バッファー オーバーランの回避」を参照してください。
要件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
_memccpy |
<memory.h> または <string.h> |
互換性の詳細については、「 Compatibility」を参照してください。
ライブラリ
C ランタイム ライブラリのすべてのバージョン。
例
// crt_memccpy.c
#include <memory.h>
#include <stdio.h>
#include <string.h>
char string1[60] = "The quick brown dog jumps over the lazy fox";
int main( void )
{
char buffer[61];
char *pdest;
printf( "Function: _memccpy 60 characters or to character 's'\n" );
printf( "Source: %s\n", string1 );
pdest = _memccpy( buffer, string1, 's', 60 );
*pdest = '\0';
printf( "Result: %s\n", buffer );
printf( "Length: %d characters\n", strlen( buffer ) );
}
出力
Function: _memccpy 60 characters or to character 's'
Source: The quick brown dog jumps over the lazy fox
Result: The quick brown dog jumps
Length: 25 characters
関連項目
バッファー操作
memchr
, wmemchr
memcmp
, wmemcmp
memcpy
, wmemcpy
memset
, wmemset