_memccpy
Copia caracteres de um buffer.
Sintaxe
void *_memccpy(
void *dest,
const void *src,
int c,
size_t count
);
Parâmetros
dest
Ponteiro para o destino.
src
Ponteiro para a origem.
c
Último caractere a ser copiado.
count
Número de caracteres.
Valor retornado
Se o caractere c
for copiado, _memccpy
retornará um ponteiro para o caractere que dest
segue imediatamente o caractere. Se c
não for copiado, ele retornará NULL
.
Comentários
A _memccpy
função copia zero ou mais caracteres de para dest
, parando quando o caractere c
foi copiado src
ou quando count
os caracteres foram copiados, o que ocorrer primeiro.
Observação de segurança Certifique-se de que o buffer de destino seja do mesmo tamanho ou maior que o buffer de origem. Para obter mais informações, confira Como evitar sobrecargas de buffer.
Requisitos
Rotina | Cabeçalho necessário |
---|---|
_memccpy |
<memory.h> ou <string.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Bibliotecas
Todas as versões das bibliotecas em tempo de execução C.
Exemplo
// 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 ) );
}
Saída
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
Confira também
Manipulação de buffer
memchr
, wmemchr
memcmp
, wmemcmp
memcpy
, wmemcpy
memset
, wmemset