petsc-3.7.1 2016-05-15
Report Typos and Errors

# PetscMemcpy

Copies n bytes, beginning at location b, to the space beginning at location a. The two memory regions CANNOT overlap, use PetscMemmove() in that case.

### Synopsis

    PETSC_STATIC_INLINE PetscErrorCode PetscMemcpy(void *a,const void *b,size_t n)

Not Collective Many br

### Input Parameters

| b | - pointer to initial memory space Many br
| n | - length (in bytes) of space to copy Many br

### Output Parameter

a -pointer to copy space Many br

Many br

### Compile Option

PETSC_PREFER_DCOPY_FOR_MEMCPY will cause the BLAS dcopy() routine to be used Many brfor memory copies on double precision values. Many brPETSC_PREFER_COPY_FOR_MEMCPY will cause C code to be used Many brfor memory copies on double precision values. Many brPETSC_PREFER_FORTRAN_FORMEMCPY will cause Fortran code to be used Many brfor memory copies on double precision values. Many br

### Note

This routine is analogous to memcpy(). Many br

Developer Note: this is inlined for fastest performance Many br

### See Also

PetscMemmove()

Level:intermediate
Location:include/petscsys.h
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/ksp/ksp/examples/tutorials/ex56.c.html
src/snes/examples/tutorials/ex28.c.html
src/ts/examples/tutorials/ex9.c.html
src/ts/examples/tutorials/ex10.c.html
src/ts/examples/tutorials/ex11.c.html
src/ts/examples/tutorials/extchem.c.html