INTRODUCCIÓN:
strcpy es una función de biblioteca estándar de C que copia una cadena de una ubicación a otra. Está definido en el archivo de encabezado string.h.
La función toma dos argumentos: un búfer de destino donde se almacenará la cadena copiada y una cadena de origen que se copiará. La función copia la cadena de origen completa, incluido el terminador nulo, en el búfer de destino.
matriz de bytes de Java a cadena
El C strcpy() función copias el contenido de una cadena a otra. El contenido de la cadena de destino será reemplazado con el de la cadena fuente mediante la función strcpy(). esta definido por dentro archivo de cabecera.
Sintaxis:
char* strcpy(char* destination, const char* source);>
Parámetros: Este método acepta los siguientes parámetros:
- destino: puntero a la matriz de caracteres de destino donde se copiará el contenido. fuente: puntero a la matriz de caracteres de origen que se va a copiar.
Valor de retorno: A puntero al destino La cadena se devuelve después de que la función strcpy() copia la cadena fuente.
Ejemplo 1
C
// C program to illustrate> // strcpy() function in C> #include> #include> int> main()> {> >char> str1[] =>'Hello World!'>;> >char> str2[] =>'GfG'>;> >char> str3[40];> >char> str4[40];> >char> str5[] =>'GeeksForGeeks'>;> >strcpy>(str2, str1);> >strcpy>(str3,>'Copy successful'>);> >strcpy>(str4, str5);> >printf>(>'str1: %s
str2: %s
str3: %s
str4:%s
'>, str1,> >str2, str3, str4);> >return> 0;> }> |
>
>Producción
str1: Hello World! str2: Hello World! str3: Copy successful str4:GeeksForGeeks>
EJEMPLO 2:
C
parseint java
#include> #include> int> main()> {> >char> str1[20] =>'Hello'>;> >char> str2[20];> >strcpy>(str2, str1);> >printf>(>'str1: %s
'>, str1);> >printf>(>'str2: %s
'>, str2);> >return> 0;> }> |
empresa vs empresa
>
>Producción
str1: Hello str2: Hello>
Puntos importantes
- Con esta función, puede copiar la cadena completa a la cadena de destino. Las cadenas de origen no se añaden a las cadenas de destino. Como resultado, el contenido de la cadena de destino se reemplaza por el contenido de la cadena de origen.
- Las cadenas de origen no se ven afectadas. Después de copiar, la cadena de origen sigue siendo la misma.
- Para usar strcpy(), el cadena.h Se debe incluir el archivo de encabezado.
- En el caso de una cadena fuente más larga (Character Array), strcpy() realiza un comportamiento indefinido.
VENTAJAS Y DESVENTAJAS:
Algunas ventajas de usar strcpy en C incluyen:
Es una función simple y fácil de usar que se puede utilizar para copiar cadenas de forma rápida y sencilla.
Es una función de biblioteca estándar, por lo que está ampliamente disponible y es portátil en diferentes plataformas y compiladores.
Es relativamente rápido, ya que solo requiere un paso a través de la cadena fuente para copiarla.
Sin embargo, también hay algunas desventajas a considerar al usar strcpy:
No comprueba el tamaño del búfer de destino, por lo que es posible sobrescribir el búfer y provocar un desbordamiento del búfer si la cadena de origen es más larga que el búfer de destino. Esto puede provocar vulnerabilidades de seguridad y otros problemas.
No maneja correctamente las cadenas superpuestas. Si las cadenas de origen y destino se superponen, el comportamiento de strcpy no está definido.
No maneja correctamente los caracteres nulos dentro de la cadena fuente. Si la cadena fuente contiene un carácter nulo, strcpy dejará de copiar en ese punto, incluso si hay caracteres adicionales en la cadena fuente.