EINFÜHRUNG:
strcpy ist eine C-Standardbibliotheksfunktion, die eine Zeichenfolge von einem Speicherort an einen anderen kopiert. Es ist in der Header-Datei string.h definiert.
Die Funktion benötigt zwei Argumente: einen Zielpuffer, in dem die kopierte Zeichenfolge gespeichert wird, und eine Quellzeichenfolge, die kopiert wird. Die Funktion kopiert die gesamte Quellzeichenfolge, einschließlich des Null-Terminators, in den Zielpuffer.
Shweta Tiwari
Der C strcpy() Funktion Kopien den Inhalt einer Zeichenfolge in eine andere umwandeln. Der Inhalt der Zielzeichenfolge wird sein ersetzt mit dem des Quellstrings durch die Funktion strcpy(). Es ist im Inneren definiert Header-Datei.
Syntax:
char* strcpy(char* destination, const char* source);>
Parameter: Diese Methode akzeptiert die folgenden Parameter:
- Ziel: Zeiger auf das Zielzeichenarray, in das der Inhalt kopiert werden soll. Quelle: Zeiger auf das Quellzeichenarray, das kopiert werden soll.
Rückgabewert: A Zeiger auf das Ziel string wird zurückgegeben, nachdem die Funktion strcpy() die Quellzeichenfolge kopiert hat.
Beispiel 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;> }> |
>
>Ausgabe
arraylist.sort
str1: Hello World! str2: Hello World! str3: Copy successful str4:GeeksForGeeks>
BEISPIEL 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;> }> |
NPM-Cache leer
>
>Ausgabe
str1: Hello str2: Hello>
Wichtige Punkte
- Mit dieser Funktion können Sie den gesamten String in den Zielstring kopieren. Quellzeichenfolgen werden nicht an Zielzeichenfolgen angehängt. Dadurch wird der Inhalt der Zielzeichenfolge durch den Inhalt der Quellzeichenfolge ersetzt.
- Quellzeichenfolgen sind nicht betroffen. Nach dem Kopieren bleibt die Quellzeichenfolge dieselbe.
- Um strcpy() zu verwenden, muss die string.h Header-Datei muss enthalten sein.
- Bei einer längeren Quellzeichenfolge (Character Array) führt strcpy() ein undefiniertes Verhalten aus.
VORTEILE UND NACHTEILE:
Zu den Vorteilen der Verwendung von strcpy in C gehören:
Es handelt sich um eine einfache und benutzerfreundliche Funktion, mit der sich Zeichenfolgen schnell und einfach kopieren lassen.
Da es sich um eine Standardbibliotheksfunktion handelt, ist sie allgemein verfügbar und auf verschiedene Plattformen und Compiler portierbar.
Es ist relativ schnell, da zum Kopieren nur ein einziger Durchlauf durch die Quellzeichenfolge erforderlich ist.
Bei der Verwendung von strcpy sind jedoch auch einige Nachteile zu berücksichtigen:
Die Größe des Zielpuffers wird nicht überprüft. Daher besteht die Möglichkeit, dass der Puffer überschrieben und ein Pufferüberlauf verursacht wird, wenn die Quellzeichenfolge länger als der Zielpuffer ist. Dies kann zu Sicherheitslücken und anderen Problemen führen.
Überlappende Zeichenfolgen werden nicht richtig verarbeitet. Wenn sich die Quell- und Zielzeichenfolgen überschneiden, ist das Verhalten von strcpy undefiniert.
Es verarbeitet Nullzeichen in der Quellzeichenfolge nicht ordnungsgemäß. Wenn die Quellzeichenfolge ein Nullzeichen enthält, stoppt strcpy den Kopiervorgang an dieser Stelle, auch wenn die Quellzeichenfolge zusätzliche Zeichen enthält.