Freigeben über


_memccpy

Kopiert Zeichen aus einem Puffer.

Syntax

void *_memccpy(
   void *dest,
   const void *src,
   int c,
   size_t count
);

Parameter

dest
Zeiger auf das Ziel.

src
Zeiger auf die Quelle.

c
Letztes zu kopierendes Zeichen.

count
Anzahl der Zeichen.

Rückgabewert

Wenn das Zeichen c kopiert wird, wird ein Zeiger auf das Zeichen zurückgegeben, _memccpy das dest unmittelbar auf das Zeichen folgt. Wenn c sie nicht kopiert wird, wird sie zurückgegeben NULL.

Hinweise

Die _memccpy Funktion kopiert null oder mehr Zeichen von src an dest, angehalten, wenn das Zeichen c kopiert wurde oder wenn count Zeichen kopiert wurden, je nachdem, was zuerst kommt.

Sicherheitshinweis Stellen Sie sicher, dass der Zielpuffer dieselbe Größe wie der Quellpuffer aufweist bzw. größer ist. Weitere Informationen finden Sie unter Vermeiden von Pufferüberläufen.

Anforderungen

Routine Erforderlicher Header
_memccpy <memory.h> oder <string.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Libraries

Alle Versionen der C-Laufzeitbibliotheken.

Beispiel

// 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

Siehe auch

Pufferbearbeitung
memchr, wmemchr
memcmp, wmemcmp
memcpy, wmemcpy
memset, wmemset