String in C Language in Hindi – Complete Guide with Examples

String in C Language in Hindi सीखना उन सभी के लिए बहोत जरूरी है जो C Programming को seriously लेना चाहते हैं। सोचिए — जब भी आप अपने Program में किसी का नाम store करते हैं, कोई message screen पर दिखाते हैं, या किसी file से data पढ़ते हैं… हर जगह String का ही Use होता है। यानी String समझे बिना C Programming का सफर अधूरा है, यह कहना बिल्कुल गलत नहीं होगा।

अब सवाल यह है कि String आखिर होती क्या है? इसे कैसे declare करते हैं, कैसे print करते हैं, और इस पर काम करने वाले functions कौन-कौन से हैं? इन्हीं सब सवालों का जवाब इस post में मिलने वाला है — वो भी सरल हिंदी में।

इस post को पढ़ने के बाद आप String को declare करना, initialize करना, print करना सीख जायेंगे। और कुछ सबसे use होने वाले function को भी समझाया गया है example code के साथ।  और भी बहोत कुछ cover किए गए हैं, वो आपको पूरा Post पढ़ने के बाद ही मालूम पड़ेगा। 

तो चलिए शुरू करते हैं!

String क्या होती है? (What is String in C)

C language में character array को String कहते हैं। सरल शब्दों में कहें तो String characters का एक समूह है जो एक साथ मिलकर कोई word, sentence, या message बनाते हैं।

C language में String को एक character array के रूप में store किया जाता है। Java या Python जैसी भाषाओं के विपरीत, C में String का कोई अलग data type नहीं होता। इसके बजाय char array का उपयोग किया जाता है।

String का सबसे महत्वपूर्ण नियम यह है कि हर String के अंत में एक null character (\0) होता है। यह null character ही बताता है कि String यहाँ समाप्त हो गई है।

उदाहरण:

“Hello” को memory में इस प्रकार store होगी:

H | e | l | l | o | \0

String Declaration And Initialization In C

जब हम string in c language in hindi में पढ़ रहें हैं तो String को सही तरीके से declare करना initialize करना पहला कदम है। 

String Declaration के तरीके

तरीका 1 — Array की तरह declare करना:

char name[20];

यहाँ name एक character array है जिसमें अधिकतम 19 characters store हो सकते हैं (एक जगह \0 के लिए)।

तरीका 2 — Declaration के साथ initialization:

char name[20] = “Ramesh”;

तरीका 3 — Size के बिना initialization:

char name[] = “Ramesh”;

इस स्थिति में compiler खुद array का size तय कर देता है।

तरीका 4 — Character by character initialization:

char name[] = {‘R’, ‘a’, ‘m’, ‘e’, ‘s’, ‘h’, ‘\0’};

ध्यान रखें कि इस तरीके में \0 खुद लिखना जरूरी है।

String in C Language in Hindi

String को Print कैसे करें

C में String print करने के दो मुख्य तरीके हैं:

1. printf() Function का उपयोग

#include <stdio.h>

int main() {
    char name[] = "Aman Gupta";   // Store a name in a character array (string)

    printf("Name: %s\n", name);     // Display the string
    return 0;
}
▶️ Output Result
Name: Aman Gupta

2. puts() Function का उपयोग

#include <stdio.h>

int main() {
    char name[] = "Ramesh";   // Store a name in a character array (string)

    puts(name);                     // Display the string

    return 0;
}
▶️ Output Result
Ramesh

puts() फंक्शन String print करने के बाद अपने आप नई लाइन पर चला जाता है।

String को Input कैसे लें

1. scanf() से Input

#include <stdio.h>

int main() {
    char name[50];   // Character array to store a name

    printf("Enter your name: ");
    scanf("%49s", name);   // Read a single-word name from the user

    printf("Your name is: %s\n", name);

    return 0;
}
▶️ Output Result
Enter your name: Rahul Your name is: Rahul

महत्वपूर्ण बात: scanf() space तक ही input लेता है। यदि आप “Ramesh Kumar” Type करें तो केवल “Ramesh” ही store होगा।

2. gets() से Input (पूरी लाइन)

#include <stdio.h>

int main() {
    char name[50];   // Character array to store a full name

    printf("Enter your full name: ");
    fgets(name, sizeof(name), stdin);   // Read a full line of text

    printf("Your name is: %s", name);

    return 0;
}
▶️ Output Result
Enter your full name: Rahul Sharma Your name is: Rahul Sharma

3. fgets() से Input (सुरक्षित तरीका)

#include <stdio.h>

int main() {
    char name[50];   // Character array to store a name

    printf("Enter your name: ");
    fgets(name, sizeof(name), stdin);   // Read a line of text from the user

    printf("Your name is: %s", name);

    return 0;
}
▶️ Output Result
Enter your name: Rahul Your name is: Rahul

fgets() सबसे सुरक्षित तरीका है क्योंकि यह buffer overflow से बचाता है।

String Functions in C (String के जरूरी Function)

C language में <string.h> header file में कई पहले से बने बनाये function दिए गए हैं जो string in c language के साथ काम करना आसान बनाते हैं।

1. strlen() — String की Length जानने के लिये 

#include <stdio.h>
#include <string.h>

int main() {
    char name[] = "Ramesh";   // String variable

    printf("Length: %zu\n", strlen(name));   // Display the length of the string

    return 0;
}
▶️ Output Result
Length: 6

यह \0 को count नहीं करता।

2. strcpy() — String को Copy करना

#include <stdio.h>
#include <string.h>

int main() {
    char source[] = "Hello";        // Source string
    char destination[20];          // Destination string

    strcpy(destination, source);   // Copy source string to destination

    printf("%s\n", destination);

    return 0;
}
▶️ Output Result
Hello

3. strcat() — दो Strings को जोड़ना

#include <stdio.h>
#include <string.h>

int main() {
    char str1[30] = "Good ";   // First string with extra space for concatenation
    char str2[] = "Morning";     // Second string

    strcat(str1, str2);       // Append str2 to str1

    printf("%s\n", str1);

    return 0;
}
▶️ Output Result
Good Morning

4. strcmp() — दो Strings की तुलना करना

#include <stdio.h>
#include <string.h>

int main() {
    char a[] = "Apple";   // First string
    char b[] = "Apple";   // Second string

    if (strcmp(a, b) == 0) {
        printf("Both strings are equal\n");
    } else {
        printf("Both strings are different\n");
    }

    return 0;
}
▶️ Output Result
Both strings are equal
  • यदि return value 0 है → दोनों strings बराबर हैं
  • यदि return value 0 से कम है → पहली string छोटी है
  • यदि return value 0 से अधिक है → पहली string बड़ी है

5. strupr() और strlwr() — Case बदलना

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "hello world";   // String stored in array

    strupr(str);   // Convert string to uppercase (may not work in all compilers)
    printf("%s\n", str);

    strlwr(str);   // Convert string to lowercase (may not work in all compilers)
    printf("%s\n", str);

    return 0;
}
▶️ Output Result
HELLO WORLD hello world

6. strrev() — String को उल्टा करना

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Ramesh";   // String stored in array

    strrev(str);   // Reverse the string (may not work in all compilers)

    printf("%s\n", str);

    return 0;
}
▶️ Output Result
hsemaR

7. strchr() — Character ढूंढना

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Programming";   // String stored in array

    char *ptr = strchr(str, 'g'); // Find first occurrence of 'g'

    if (ptr != NULL) {
        printf("Character found: %c\n", *ptr);
    }

    return 0;
}
▶️ Output Result
Character found: g

String और Pointer का संबंध

C language में String और Pointer का बहुत गहरा संबंध है। जब हम किसी character array का नाम लिखते हैं तो वह उस array के पहले element का address होता है।

#include <stdio.h>

int main() {
    char name[] = "Ramesh";   // String stored in character array
    char *ptr = name;         // Pointer pointing to first character 'R'

    // Loop until null character is reached
    while (*ptr != '\0') {
        printf("%c ", *ptr);
        ptr++;   // Move to next character
    }

    return 0;
}
▶️ Output Result
Ramesh

आप pointer के जरिए भी String declare कर सकते हैं:

char *str = “Good Afternoon”;

printf(“%s\n”, str); // print string using pointer

String Array In C — Strings का समूह

कभी-कभी हमें कई Strings एक साथ store करनी होती हैं। इसके लिए 2D character array का उपयोग किया जाता है।

#include <stdio.h>

int main() {
    char fruits[3][20] = {"Mango", "Banana", "Grapes"};  // Array of strings

    // Print each fruit name
    for (int i = 0; i < 3; i++) {
        printf("%s\n", fruits[i]);
    }

    return 0;
}
▶️ Output Result
Mango Banana Grapes

Complete String Program In C Programming

नीचे एक complete program दिया गया है जो string in c language in hindi की सभी मुख्य अवधारणाओं को एक साथ दर्शाता है:

#include <stdio.h>
#include <string.h>

int main() {
    char name[50];
    char greeting[50] = "Good Morning, ";

    printf("Enter your name: ");
    fgets(name, 50, stdin);

    // Remove newline character if present
    name[strcspn(name, "\n")] = '\0';

    // Length of the string
    printf("Length of name: %zu\n", strlen(name));

    // Concatenation of strings
    strcat(greeting, name);
    printf("%s\n", greeting);

    // Convert to uppercase (may not work in all compilers)
    strupr(name);
    printf("Uppercase: %s\n", name);

    return 0;
}
▶️ Output Result
Enter your name: Rahul Length of name: 5 Good Morning, Rahul Uppercase: RAHUL

String से जुड़ी सामान्य गलतियाँ

  • string in c language सीखते समय Beginners लोग अक्सर ये गलतियाँ करते हैं:
  • Null character भूलना: Character-by-character initialization में \0 न डालना।
  • Array size छोटी रखना: String के size से कम array size declare करना, जिससे buffer overflow होता है।
  • scanf से पूरा नाम न मिलना: Space वाले नाम के लिए gets() या fgets() की जगह scanf() उपयोग करना।
  • String comparison में == का उपयोग: strcmp() की जगह == से compare करना, जो addresses compare करता है, values नहीं।
  •  strcpy के बिना assignment: str1 = str2 लिखना, जो C में काम नहीं करता। इसके लिए strcpy() जरूरी है।

 Conclusion (निष्कर्ष)

तो आज आपने पढ़ा String in C language in Hindi में Example Program के साथ। C Programming में String को अच्छे से समझना C Programming के नींव को मजबूत करता है। इस पोस्ट में हमने String की परिभाषा से लेकर declaration, initialization, input-output, सभी महत्वपूर्ण string functions, pointer के साथ संबंध, और सामान्य गलतियों तक सब कुछ सरल हिंदी में समझाया। इन सभी अवधारणाओं को अच्छी तरह समझने के बाद आप अपने C Program में Strings का उपयोग Confidence के साथ कर पाएंगे।

अब आपकी बारी है — आज ही अपने computer पर code editor खोलें और ऊपर दिए गए example program को खुद लिखकर चलाएं। जितना ज्यादा practice करेंगे, उतना ही String का Concept clear होता जाएगा। यदि आपके कोई सवाल हों तो नीचे comment करें और हमारी website को bookmark करना न भूलें ताकि C language से जुड़ी और भी उपयोगी जानकारी आप तक पहुँचती रहे।

Frequently Asked Questions

Q 1: C language में String और Character Array में क्या अंतर है?
Ans: C में String और character array दोनों एक ही चीज हैं। फर्क सिर्फ इतना है कि String के अंत में एक null character () होता है जो बताता है कि String यहाँ समाप्त हो गई। एक सामान्य character array में यह null character नहीं होता।
Q 2: String को compare करने के लिए == का उपयोग क्यों नहीं करते?
Ans: C में == operator दो variables के मूल्यों की नहीं बल्कि उनके memory addresses की तुलना करता है। इसलिए strcmp() function का उपयोग किया जाता है जो दोनों Strings के characters की एक-एक करके तुलना करते हैं, और सही result देते हैं।
Q 3: gets() और fgets() में क्या अंतर है?
Ans: gets() function पुराना और असुरक्षित है क्योंकि यह array की सीमा की जाँच नहीं करता और buffer overflow का कारण बन सकता है। fgets() अधिक सुरक्षित है क्योंकि इसमें maximum characters की संख्या निर्धारित की जा सकती है। नए C Programming में हमेशा fgets() का उपयोग करना चाहिए।
Q 4: String की लंबाई में null character () क्यों नहीं गिना जाता?
Ans: strlen() function String की actual length यानी दिखाई देने वाले characters की संख्या बताता है। एक internal marker है जो String के अंत को दर्शाता है, इसलिए इसे characters की गिनती में शामिल नहीं किया जाता। हालाँकि memory allocation के समय इसके लिए एक अतिरिक्त byte का स्थान जरूर रखना होता है।
Q 5: क्या C में String को सीधे assign किया जा सकता है?
Ans: नहीं। C में declaration के बाद String को सीधे = से assign नहीं किया जा सकता। उदाहरण के लिए name = “Ramesh” गलत है। इसके लिए strcpy(name, “Ramesh”) का उपयोग करना होगा। हालाँकि declaration के समय char name[] = “Ramesh” लिखना सही है।

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top