strcpy in C/C++

strcpy() is a standard library function in C/C++ and is used to copy one string to another. In C it is present in string.h header file and in C++ it is present in cstring header file.


char* strcpy(char* dest, const char* src);

Paramters: This method accepts following paramters:

  • dest: Pointer to the destination array where the content is to be copied.
  • src: string which will be copied.

Return Value: After copying the source string to the destination string, the strcpy() function returns a pointer to the destination string.

Below program explains different usages of this library function:

// C program to illustrate 
// strcpy() function ic C/C++
int main ()
    char str1[]="Hello Geeks!";
    char str2[] = "GeeksforGeeks";
    char str3[40];
    char str4[40];
    char str5[] = "GfG";
    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;


str1: Hello Geeks!
str2: Hello Geeks!
str3: copy successful
str4: GfG

Important Points

  • This function copies the entire string to the destination string. It doesn’t append the source string to the destination string. In other words, we can say that it replaces the content of destination string by the content of source string.
  • It does not affect the source string. The source string remains same after copying.
  • This function only works with C style strings and not C++ style strings i.e. it only works with strings of type char str[]; and not string s1; which are created using standard string data type available in C++ and not C.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

This article is attributed to GeeksforGeeks.org

You Might Also Like

leave a comment



load comments

Subscribe to Our Newsletter