memccpy()

Копировать содержимое области памяти до заданного байта

Прототип:

#include <string.h>
void * memccpy( void *dest,
const void *src,
int c,
size_t cnt );

Аргументы:

dest
A pointer to where you want the function to copy the data.
src
A pointer to the buffer that you want to copy data from.
c
The value that you want to stop copying at.
cnt
The maximum number of bytes to copy.

Библиотека:

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 системной библиотеки