_memccpy

バッファーから文字をコピーします。

構文

void *_memccpy(
   void *dest,
   const void *src,
   int c,
   size_t count
);

パラメーター

dest
ターゲットへのポインター。

src
ソースへのポインター。

c
コピーする最後の文字。

count
文字数。

戻り値

文字 c がコピーされた場合は、 _memccpy その文字の直後にある char dest へのポインターを返します。 コピーされていない場合 c は、 NULL.

解説

この関数は_memccpy、0 個以上のdestsrc文字をコピーし、文字がコピーされたとき、または文字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