petsc-3.14.5 2021-03-03
Report Typos and Errors

# PetscMalloc1

Allocates an array of memory aligned to PETSC_MEMALIGN

### Synopsis

    #include <petscsys.h>
    PetscErrorCode PetscMalloc1(size_t m1,type **r1)

Not Collective

### Input Parameter

| m1 | - number of elements to allocate (may be zero)

### Output Parameter

| r1 | - memory allocated

### Note

This uses the sizeof() of the memory type requested to determine the total memory to be allocated, therefore you should not multiply the number of elements requested by the sizeof() the type. For example use

     PetscInt *id;

     PetscMalloc1(10,&id);

not

     PetscInt *id;

     PetscMalloc1(10*sizeof(PetscInt),&id);

Does not zero the memory allocated, use PetscCalloc1() to obtain memory that has been zeroed.

### See Also

PetscFree(), PetscNew(), PetscMalloc(), PetscCalloc1(), PetscMalloc2()

### Level

beginner

### Location

include/petscsys.h

### Examples

src/sys/classes/random/tutorials/ex1.c.html
src/sys/classes/random/tutorials/ex2.c.html
src/vec/vec/utils/tagger/tutorials/ex1.c.html
src/vec/vec/tutorials/ex6.c.html
src/vec/vec/tutorials/ex8.c.html
src/vec/vec/tutorials/ex9.c.html
src/vec/is/is/tutorials/ex1.c.html
src/vec/is/sf/tutorials/ex1.c.html
src/vec/is/sf/tutorials/ex2.c.html
src/mat/tutorials/ex2.c.html
src/mat/tutorials/ex9.c.html
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages