_memccpy
Kopiuje znaki z buforu.
Składnia
void *_memccpy(
void *dest,
const void *src,
int c,
size_t count
);
Parametry
dest
Wskaźnik do miejsca docelowego.
src
Wskaźnik do źródła.
c
Ostatni znak do skopiowania.
count
Liczba znaków.
Wartość zwracana
Jeśli znak c
jest kopiowany, _memccpy
zwraca wskaźnik do znaku , który dest
natychmiast następuje po znaku. Jeśli c
nie zostanie skopiowany, zwraca wartość NULL
.
Uwagi
Funkcja _memccpy
kopiuje zero lub więcej znaków src
do dest
, zatrzymując się, gdy znak c
został skopiowany lub kiedy count
znaki zostały skopiowane, w zależności od tego, co nastąpi wcześniej.
Uwaga zabezpieczeń Upewnij się, że bufor docelowy ma ten sam rozmiar lub większy niż bufor źródłowy. Aby uzyskać więcej informacji, zobacz Unikanie przekroków buforu.
Wymagania
Procedura | Wymagany nagłówek |
---|---|
_memccpy |
<memory.h> lub <string.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Biblioteki
Wszystkie wersje bibliotek czasu wykonywania języka C.
Przykład
// 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 ) );
}
Wynik
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
Zobacz też
Manipulowanie buforem
memchr
, wmemchr
memcmp
, wmemcmp
memcpy
, wmemcpy
memset
, wmemset