string.h
Función strncpy ANSI C
char *strncpy(char *s1, const char *s2, size_t n);
Copia no más de n caracteres (caracteres posteriores al carácter nulo no son copiados) de la cadena apuntada por s2 a la cadena apuntada por s1.
Valor de retorno:
La función retorna el valor de s1. Si al copiar una cadena a la otra se superponen, entonces el comportamiento no está definido. Si el array/arreglo apuntado por s2 es una cadena que es más corta que n caracteres, entonces caracteres nulos son añadidos a la copia en el array apuntado por s1.
Ejemplo:
#include <stdio.h>
#include <string.h>
int main()
{
char s2[8] = "abcdefg";
char s1[8];
strncpy( s1, s2, 3 );
printf( "s2=%s\n", s2 );
printf( "s1=%s\n", s1 );
return 0;
}