Como usar a função Memcpy em C++

Escrito por ehow contributor | Traduzido por caio amorim
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como usar a função Memcpy em C++
Usando Memcpy em C++ (Computer image by Haris Rauf from Fotolia.com)

A função Memcpy copia o número especificado de dados a partir de uma determinada fonte para o destino requisitado. Esta é uma cópia binária, de modo que o tipo de dado é irrelevante. Os passos a seguir nos ajudarão a usar esta função.

Nível de dificuldade:
Desafiante

Outras pessoas estão lendo

Instruções

  1. 1

    Aprenda a sintaxe completa de memcpy em c++. Ela é void memcpy (void destination, const void *source, size_t num); Perceba que esta função sempre copia o número determinado de bytes e nunca procura um caractere de fechamento para ser o mais eficiente possível. A função retorna o "array" de destino.

  2. 2

    Saiba que os ponteiros para os "arrays" fonte e destino são convertidos para void. O tamanho dos "arrays" de fonte e destino deve ser pelo menos igual ao número de bytes para evitar "overflows", apesar de isto não ser requisitado. A função Memmove pode ser considerada uma abordagem mais segura se a fonte e o destino se sobrepõem.

  3. 3

    Entenda que a função memcpy está mantida na biblioteca cstring. Você pode ter de incluir o cabeçalho string.h para usá-la.

  4. 4

    O código seguinte é um programa completo com alguns exemplos de como usar memcpy:

    include

    include

    int main () { char string1[]="test string"; char string2[80]; memcpy (string2,string1,strlen(string1)+1); printf ("string1: %s\nstring2: %s\n",string1,string2); memcpy (string1,"",1); printf ("string1: %s\n",string1); return 0; }

  5. 5

    Observe a seguinte saída deste programa:

    string1: test string string2: test string string1:

    O primeiro uso de memcpy copia o conteúdo da string1 para a string2. O segundo uso limpa os conteúdos da string1, movendo o ponteiro de caractere nulo para a primeira posição da string1.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível