Skip to main content
`Ctrl`+`K`

# PetscStrncpy

Copies a string up to a certain length

## Synopsis

    static inline PetscErrorCode PetscStrncpy(char s[], const char t[], size_t n)

Not Collective

## Input Parameters

- t - pointer to string

- n - the length to copy

## Output Parameter

- s - the copied string

## Notes

`NULL` string returns a string starting with zero.

If the string that is being copied is of length `n` or larger, then the entire string is not copied and the final location of `s` is set to `NULL`. This is different then the behavior of `strncpy()` which leaves `s` non-terminated if there is not room for the entire string.

## Developer Note

Should this be `PetscStrlcpy()` to reflect its behavior which is like `strlcpy()` not `strncpy()`?

## See Also

`PetscStrlcat()`, `PetscStrallocpy()`

## Level

intermediate

## Location

include/petscstring.h

## Examples

src/ksp/ksp/tutorials/ex87.c
src/ksp/ksp/tutorials/ex75.c
src/ts/tutorials/ex18.c
src/snes/tutorials/ex17.c
src/ksp/ksp/tutorials/ex10.c
src/ts/tutorials/ex11.c
src/ksp/ksp/tutorials/ex72.c
src/ksp/ksp/tutorials/ex76.c
src/dm/impls/forest/tutorials/ex1.c
src/tao/constrained/tutorials/maros.c

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages