C Program to Copy Strings without using Library Function

1. Introduction

One of the fundamental operations when dealing with strings in programming is copying. It's often necessary to duplicate the content of one string into another. Though many C library functions like strcpy() facilitate this, it's essential to grasp the underlying process. This guide explores a C program to copy one string to another without resorting to library functions.

2. Program Overview

The main objectives of the program are to:

1. Prompt the user to input a string.

2. Copy the contents of this string to another.

3. Display the copied string.

3. Code Program

#include <stdio.h>  // Include the Standard I/O library

int main() {  // Start of the main function

    char source[100], destination[100];  // Declare arrays to store the original and copied strings
    int i = 0;  // Counter variable

    // Ask the user for the source string
    printf("Enter the source string: ");
    scanf("%s", source);

    // Loop to copy the string
    while (source[i] != '\0') {
        destination[i] = source[i];
        i++;
    }
    destination[i] = '\0';  // Null terminate the destination string

    printf("Copied string is: %s\n", destination);  // Display the copied string

    return 0;  // End the program

}

Output:

Enter the source string: programming
Copied string is: programming

4. Step By Step Explanation

1. #include <stdio.h>: This line includes the standard input/output library for functions like printf and scanf.

2. int main(): The main function, where our program begins.

3. Variable and Array Declaration:

- We declare two character arrays, source, and destination, to hold the original and copied strings respectively.

- i is our counter variable.

4. User Input:

- Using the printf function, we ask the user to input the source string.

- The scanf function then captures and stores this string in the source array.

5. Copying Process:

- We utilize a while loop to traverse the source string. As long as we don't encounter the null character (indicative of the string's end), we copy each character from source to destination.

- After copying, we manually append the null character to the destination string, ensuring it's properly terminated.

6. Displaying the Copied String:

- Finally, the program uses printf to display the content of the destination string. 

Through this program, learners receive a foundational grasp of the mechanisms behind string copying in C, emphasizing the importance of manual string termination after copying.

Comments