INTRODUCCIÓ:
strcpy és una funció de biblioteca estàndard C que copia una cadena d'una ubicació a una altra. Es defineix al fitxer de capçalera string.h.
La funció pren dos arguments: un buffer de destinació on s'emmagatzemarà la cadena copiada i una cadena d'origen que es copiarà. La funció copia tota la cadena d'origen, inclòs el terminador nul, a la memòria intermèdia de destinació.
mysql mostra usuaris
El C strcpy() funció còpies el contingut d'una cadena a una altra. El contingut de la cadena de destinació serà reemplaçat amb la de la cadena font per la funció strcpy(). Està definit per dins fitxer de capçalera.
Sintaxi:
char* strcpy(char* destination, const char* source);>
Paràmetres: Aquest mètode accepta els paràmetres següents:
- destinació : punter a la matriu de caràcters de destinació on s'ha de copiar el contingut. font: punter a la matriu de caràcters font que s'ha de copiar.
Valor de retorn: A punter a la destinació La cadena es retorna després que la funció strcpy() copie la cadena d'origen.
Exemple: 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;> }> |
>
regexp_like a mysql
>Sortida
str1: Hello World! str2: Hello World! str3: Copy successful str4:GeeksForGeeks>
EXEMPLE 2:
C
#include> #include> int> main()> {> >char> str1[20] =>'Hello'>;> >char> str2[20];> >strcpy>(str2, str1);> >printf>(>'str1: %s
'>, str1);> >printf>(>'str2: %s
'>, str2);> >return> 0;> }> |
excel eliminar el primer caràcter
>
>Sortida
str1: Hello str2: Hello>
Punts importants
- Amb aquesta funció, podeu copiar tota la cadena a la cadena de destinació. Les cadenes d'origen no s'afegeixen a les cadenes de destinació. Com a resultat, el contingut de la cadena de destinació se substitueix pel contingut de la cadena d'origen.
- Les cadenes d'origen no es veuen afectades. Després de la còpia, la cadena d'origen continua sent la mateixa.
- Per utilitzar strcpy(), el corda.h s'ha d'incloure el fitxer de capçalera.
- En el cas d'una cadena d'origen més llarga (Matriu de caràcters), strcpy() realitza un comportament no definit.
AVANTATGES I INCONVENIENTS:
Alguns avantatges d'utilitzar strcpy en C inclouen:
És una funció senzilla i fàcil d'utilitzar que es pot utilitzar per copiar cadenes de manera ràpida i senzilla.
És una funció de biblioteca estàndard, de manera que està àmpliament disponible i portàtil a diferents plataformes i compiladors.
És relativament ràpid, ja que només requereix una sola passada per la cadena d'origen per copiar-la.
Tanmateix, també hi ha alguns desavantatges a tenir en compte quan s'utilitza strcpy:
No comprova la mida de la memòria intermèdia de destinació, de manera que és possible sobreescriure la memòria intermèdia i provocar un desbordament de la memòria intermèdia si la cadena d'origen és més llarga que la memòria intermèdia de destinació. Això pot provocar vulnerabilitats de seguretat i altres problemes.
No gestiona correctament les cordes superposades. Si les cadenes d'origen i de destinació es superposen, el comportament de strcpy no està definit.
No gestiona correctament els caràcters nuls dins de la cadena d'origen. Si la cadena d'origen conté un caràcter nul, strcpy deixarà de copiar-se en aquest moment, encara que hi hagi caràcters addicionals a la cadena d'origen.