strcpy , la enciclopedia libre
Función incluida dentro del archivo de cabecera de constantes string.h del lenguaje de programación C.
Prototipo
[editar]char *strcpy ( char *destino, const char *origen );
Parámetros
[editar]char *destino char *origen
Descripción
[editar]Copia la cadena apuntada por origen en la cadena apuntada por destino.
Ejemplo
[editar]char * origen = "Hola mundo"; //Se inicializa la variable origen con el valor indicado char destino[strlen(origen)+1]; //El puntero destino debe contener suficiente espacio para copiar sobre la zona de memoria a la que apunta, la cadena apuntada por origen strcpy (destino, origen); // Después de realizar esta operación la variable ''destino'' tendrá el valor "Hola mundo"
Ejemplos en C++
[editar]#include <iostream> #include <cstring> using namespace std; int main(){ float venta[100], auxV, suma=0; char vendedor[100][30], aux[30]; int i, j, n; cout << "Ingrese la cantidad de Vendedores:"; cin >> n; for (i = 0; i < n ; i++){ cout << "Vendedor "<<i+1<<endl; cout << "Nombre Vendedor:"; cin >> vendedor[i]; cout << "Importe de su Venta:"; cin >> venta[i]; suma += venta[i]; } for(i = 0; i < n-1; i++) for(j = i+1; j < n; j++) if (venta[i] > venta[j]){ auxV = venta[i]; venta[i] = venta[j]; venta[j] = auxV; strcpy(aux, vendedor[i]); strcpy(vendedor[i], vendedor[j]); strcpy(vendedor[j], aux); } cout << "Venta Maxima: " << venta[n-1] << " Realizado por " << vendedor[n-1] << endl; cout << "Venta Minima: " << venta[0] << " Realizado por " << vendedor[0] << endl; cout << "Venta Promedio:" << suma << endl; cin.get(); return 0; }
- OpenBSD dispone de una versión más segura llamada strlcpy: una variante de strlcpy que trunca el resultado para que quepa en el búfer de destino[1]
Referencias
[editar]- ↑ Miller, Todd C.; De Raadt, Theo (6 de junio de 1999). strlcpy and strlcat - Consistent, Safe, String Copy and Concatenation. USENIX Annual Technical Conference. Monterey, California. Consultado el 13 de diciembre de 2011.