_memccpy
Copia caracteres de un búfer.
void *_memccpy(
void *dest,
const void *src,
int c,
size_t count
);
Parámetros
dest
Puntero al destino.src
Puntero al origen.c
Último carácter a copiar.recuento
número de caracteres.
Valor devuelto
Si se copia el carácter c , _memccpy devuelve un puntero a char en el dest que sigue inmediatamente al carácter.si c no se copia, devuelve NULL.
Comentarios
La función de _memccpy copia 0 o más caracteres srca dest, deteniéndose cuando se ha copiado el carácter c o cuando se han copiado los caracteres de recuento , lo que encuentre primero.
Nota de seguridad Asegúrese De que el búfer de destino es el mismo tamaño o mayor que el búfer de origen.Para obtener más información, vea Para evitar las saturaciones del búfer.
Requisitos
rutina |
Encabezado necesario |
---|---|
_memccpy |
<memory.h> o <string.h> |
Para obtener más información de compatibilidad, vea compatibilidad en la Introducción.
bibliotecas
todas las versiones de Bibliotecas en tiempo de ejecución de C.
Ejemplo
// 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 ) );
}
Output
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