_memccpy
Zkopíruje znaky z vyrovnávací paměti.
Syntaxe
void *_memccpy(
void *dest,
const void *src,
int c,
size_t count
);
Parametry
dest
Ukazatel na cíl.
src
Ukazatel na zdroj.
c
Poslední znak, který chcete zkopírovat.
count
Počet znaků
Vrácená hodnota
Pokud je znak c
zkopírován, _memccpy
vrátí ukazatel na znak, který dest
bezprostředně následuje za znakem. Pokud c
se nekopíruje, vrátí NULL
.
Poznámky
Funkce _memccpy
zkopíruje nula nebo více znaků src
do dest
, zastaví se při zkopírování znaku c
nebo při count
zkopírování znaků podle toho, co nastane dříve.
Poznámka zabezpečení: Ujistěte se, že cílová vyrovnávací paměť je stejná nebo větší než zdrojová vyrovnávací paměť. Další informace najdete v tématu Zabránění přetečení vyrovnávací paměti.
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
_memccpy |
<memory.h> nebo <string.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Knihovny
Všechny verze knihoven runtime jazyka C.
Příklad
// 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 ) );
}
Výstup
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
Viz také
Manipulace s vyrovnávací pamětí
memchr
, wmemchr
memcmp
, wmemcmp
memcpy
, wmemcpy
memset
, wmemset