Estresado

strcpy es una  función de biblioteca estándar del lenguaje de programación C para copiar una cadena terminada en nulo (incluido el terminador nulo) en un búfer determinado.

Prototipo de función

El prototipo descrito en el archivo de encabezado string.h:

char * strcpy ( char * dst , const char * src );

Valor devuelto

La función devuelve el valor de dst.

Ejemplo de uso

#incluir <cadena.h> #include <stdio.h> /* para printf() */ int principal () { char * str = "ejemplo de cadena" ; charbuf [ 32 ] ; // búfer más grande que una cadena buf [ 0 ] = '\0' ; // marca el búfer como una cadena vacía, o char buf[32] = ""; printf ( "cadena: \" %s \"\n " , cadena ); printf ( "búfer antes de copiar: \" %s \"\n " , buf ); strcpy ( buf , str ); printf ( "búfer después de copiar: \" %s \"\n " , buf ); devolver 0 ; }

Conclusión:

cadena: "ejemplo de cadena" búfer antes de copiar: "" búfer después de copiar: "ejemplo de cadena"

Seguridad

Dado que la función no verifica la longitud de la cadena y el tamaño del búfer, no debe usarse en datos cuyo tamaño se desconoce, para evitar desbordamientos del búfer dst .

En su lugar strcpy, se recomienda utilizar la función estándar strncpy( ¡agregando un terminador nulo si es necesario! ) o las funciones no estándar strlcpyo strncpy_s.

Enlaces