INTRODUKTION:
strcpy er en C-standard biblioteksfunktion, der kopierer en streng fra et sted til et andet. Det er defineret i string.h header-filen.
Funktionen tager to argumenter: en destinationsbuffer, hvor den kopierede streng vil blive gemt, og en kildestreng, der vil blive kopieret. Funktionen kopierer hele kildestrengen, inklusive null-terminatoren, ind i destinationsbufferen.
alya manasa
Det C strcpy() fungere kopier indholdet af en streng til en anden. Indholdet af destinationsstrengen vil være erstattet med kildestrengen med strcpy()-funktionen. Det er defineret indeni header-fil.
Syntaks:
char* strcpy(char* destination, const char* source);>
Parametre: Denne metode accepterer følgende parametre:
- destination : Pointer til destinationstegnarrayet, hvor indholdet skal kopieres. source: Pointer til kildetegnarrayet, som skal kopieres.
Returneringsværdi: EN markøren til destinationen streng returneres efter funktionen strcpy() kopierer kildestrengen.
Eksempel: 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;> }> |
programmering i c-arrays
>
>Produktion
str1: Hello World! str2: Hello World! str3: Copy successful str4:GeeksForGeeks>
EKSEMPEL 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;> }> |
switch case java
>
>Produktion
str1: Hello str2: Hello>
Vigtige pointer
- Ved at bruge denne funktion kan du kopiere hele strengen til destinationsstrengen. Kildestrenge føjes ikke til destinationsstrenge. Som følge heraf erstattes indholdet af destinationsstrengen med indholdet af kildestrengen.
- Kildestrenge påvirkes ikke. Efter kopiering forbliver kildestrengen den samme.
- For at bruge strcpy(), den streng.h header-fil skal inkluderes.
- I tilfælde af en længere kildestreng (Character Array), udfører strcpy() udefineret adfærd.
FORDELE OG ULEMPER:
Nogle fordele ved at bruge strcpy i C inkluderer:
Det er en enkel og nem at bruge funktion, der kan bruges til at kopiere strenge hurtigt og nemt.
Det er en standard biblioteksfunktion, så den er bredt tilgængelig og bærbar på tværs af forskellige platforme og compilere.
Det er relativt hurtigt, da det kun kræver en enkelt passage gennem kildestrengen for at kopiere den.
Der er dog også nogle ulemper at overveje, når du bruger strcpy:
Den kontrollerer ikke størrelsen af destinationsbufferen, så det er muligt at overskrive bufferen og forårsage et bufferoverløb, hvis kildestrengen er længere end destinationsbufferen. Dette kan føre til sikkerhedssårbarheder og andre problemer.
Den håndterer ikke overlappende strenge korrekt. Hvis kilde- og destinationsstrengene overlapper hinanden, er strcpy's adfærd udefineret.
Den håndterer ikke nul-tegn i kildestrengen korrekt. Hvis kildestrengen indeholder et nul-tegn, vil strcpy stoppe med at kopiere på det tidspunkt, selvom der er yderligere tegn i kildestrengen.