Копировать содержимое области памяти до заданного байта
#include <string.h>void * memccpy( void *dest,const void *src,int c,size_t cnt );
libc
The memccpy() function copies bytes from src to dest, up to and including the first occurrence of the character c, or until cnt bytes have been copied, whichever comes first.
A pointer to the byte in dest following the character c, if one is found and copied; otherwise, NULL
.
#include <stdio.h>#include <string.h>#include <stdlib.h>char *msg = "This is the string: not copied";int main( void ){char buffer[80];memset( buffer, '\0', 80 );memccpy( buffer, msg, ':', 80 );printf( "%s\n", buffer );return (EXIT_SUCCESS);}
Код генерирует следующий вывод:
$ ./a.out This is the string:
POSIX 1003.1 XSI
memchr(), memcmp(), memcpy(), memicmp(), memmove(), memset()
Предыдущий раздел: Описание API системной библиотеки