Strings in C programming | सी प्रोग्राममिंग में स्ट्रिंग | Hindi


एक tutorial में हमने data types के बारे मे सीखा था यदि आपको data types के बारे में नही पता हैं तो पहले आप C data types को संझले ताकि आप आसानी से string को समझ पाये । 
इस tutorial में हम C programming language में string को समझेंगे वो भी साधारण हिन्दी भाषा में । 

String in C programming | स्ट्रिंग | Hindi

 एक स्ट्रिंग characters का group होता हैं । जैसे की आपको पता ही होगा की C program बनाते समय बहुत सारे अलग अलग डाटा के साथ काम करना पड़ता हैं जिनके लिए C programming में data types बनाए गए हैं जैसे जैसे integers (7, 355, 12), characters (‘a’, ‘b’, ‘c’,’z’) और floating numbers float (16.15, 225.20, 7.346). ये सब हमने C data types में भी समझा था । String , characters का एक group होता हैं । 
Characters values के लिए हम char data type का use करते हैं लेकिन char data type का variable सिर्फ एक character value ही store कर सकता है.
चलिये उदाहरण से समझते हैं । 

char ch1, ch2, ch3, ch4;
ch1 = 'A';      //right
ch2 = 'b';      //right
ch3 = 'eb';     //wrong
ch4 = 'Rohan';   //wrong

जैसे की उपर दिये गए उदाहरण में देख सके हैं की characters के group को यानिकी एक से ज्यादा characters Rohan को string कहते हैं और eb को भी string ही कहते हैं । उपर आप देख सकते हैं की हमने char 1 और char 2 में single char value assign की हैं जो right हैं ऐसा कर सकते हैं पर यदि एक से ज्यादा char value को assign करते हैं तो वह wrong होता हैं । 

क्योकि C programming में string values के साथ काम करने के लिए कोई भी string data type नही हैं जैसे int जो interger numbers के लिए , floating point number के लिए float और single character के लिए char data type इसी तरह से C programming में string को handle करने के लिए को predefined string data type नही हैं । 
तो सवाल यह आता हैं की string के साथ काम करने के लिए क्या करना होता हैं C programming में ? 
तो C programming मे  string के साथ काम करने के लिए char data type के array की मदत लेते हैं । 
क्यूकी आपको उपर पता ही चल चुका हैं की group of characters को स्ट्रिंग कहते हैं जैसे – rohan ,sohan , car ,bike ,xyz जो की single char वैल्यू नही होती हैं एक से ज्यादा characters होते हैं तो बस उसे हम स्ट्रिंग कहते हैं । 
String के साथ काम करने के लिए char data type के array का उपयोग किया जाता हैं क्यूकी char array भी group of characters होता है। 

चलिये C programming में string declaration को सझते हैं । 

Declaration of string in C programming – 

Strings को handle करने के लिए C programming में कोई भी direct string data type नही है इसके लिए हम char data type के array का उपयोग करते हैं । 
इसलिए C language में string declaration का मतलब है char data type का one dimensional array declare करना.

Syntax – 

char str_name[size];

String size set करते वक्त string terminating null character (‘\0’) का ध्यान रखते हुए array size 1 नंबर ज्यादा रखिएगा.

char str[31];
char name[14];
char address[51];
char email[30];

इस तरह से string को declare किया जा सकता हैं । 
यहाँ पर हम size 1 number ज्यादा इसलिए ले रहे हैं क्योकि string वाले char array के last index पर null character ‘\0’ जरूर होता हैं । 

String initialization in C programming 

निम्नलिखित declatioon  और initialization  word से मिलकर एक string बनाते हैं
"Learn" array  के आखिर में null character रखने के लिए, char array का size  1 अधिक रखना चाइए । 

"Learn" शब्द में।

char arr[6] = {'L', 'e', 'a', 'r', 'n', '\0'};


यदि आप array initialization के नियम का पालन करते हैं तो आप इस तरह से भी डबल quotation mark के बीच स्ट्रिंग को लिख सकते हैं । 

char arr [] = "Learn";

C programming में string के लिए double quotation “ “ mark का उपयोग किया जाता हैं । 
असल में, आप string constant के अंत में null character  नहीं रखते हैं। 
सी कंपाइलर अपने आप '\0' को स्ट्रिंग के अंत में रखता है जब यह प्रारंभ होता है
चलिये उदाहरण से समझते हैं जिसमे हम उपर दी गयी string को प्रिंट करेंगे । 

Example of string in C programming – 

#include <stdio.h>
int main ()
{
 char alert[6] = {'L', 'e', 'a', 'r', 'n', '\0'};
 printf("Alert message: %s", alert );
 return 0;
}

Output – 

Alert message: Learn 

उपर दिये आए उदाहरण मे आप देख सकते हैं की हमने alert नाम से एक char array बनाया जिसमे हमारी string स्टोर हैं । यदि आपको array के बारे में नही पता  हैं तो सबसे पहले C arrays के बारे में अच्छे से जानले । यहाँ पर हमने आसानी से स्ट्रिंग को alert array के द्वारा प्रिंट भी कराया । 
scanf() function की help से आप without space string ही  input ले सकते हो यानी आप ऐसा कह सकते हो आप single word ही input ले सकते हो.

Input string from the keyboard using scanf() function –

#include <stdio.h>
int main()
{
    char str[20];
    printf("Enter a word : ");
    scanf("%s",str);
    printf("Your entered word : %s",str);
    return 0;
}

Output – 

Enter a word : Learn 
Your entered word : Learn

उपर दिये गए उदाहरण में हम केवल बिना स्पेस के स्ट्रिंग लिख सकते हैं ओर उसी का ही आउटपुट मितला हैं यदि आप 2 words लिखे तब क्या आउटपुट मिलता हैं नीचे देखे । 

 Enter a word : Learn Hindi
Your entered word : Learn


इस तरह से आप देख सकते हैं की बिना स्पेस दिये स्ट्रिंग का आउटपुट मिल जाता हैं । 

इस तरह से C programming में  scanf() के द्वारा string value को user से इनपुट कराके प्रिंट कराया जा सकता हैं । 

String functions in C programming | Hindi

C programming में string पर काम करने वाले predefined functions भी मोजूद हैं जिनमे से अधिक उपयोग होने वाले स्ट्रिंग functions निम्नलिखित हैं । 
1.  strcpy()  - इस स्ट्रिंग फंकशन के द्वारा एक स्ट्रिंग को दूसरे स्ट्रिंग में copy किया जा सकता हैं । strcpy() string function 2 arguments लेता हैं । strcpy(str1,str2 )  यह फंकशन string str2 को string str1 में कॉपी करता है।

Example of string copy strcpy() function in C language – 

#include <stdio.h>
void main ()
{
 char str1[12] = "Learn";
 char str2[12] = "Hindi";
 /* copy str2 into str1 */
 strcpy(str1, str2);
 printf("Copies string str2 into string str1 : %s", str1 );
}  

Output – 

Copies string str2 into string str1 : Hindi

उपर दिये गए उदाहरण में आप देख सकते हैं की str1 मे str2 को copy किया गया जिसकी वजह से str1 को print करने पर भी Hindi string value मिल रही हैं ।  
2.  strcat() – इस string function का उपयोग  एक string को दूसरी string के पीछे concatenate(जोड़ने) में किया जाता हैं । strcat(str1,str2) यह function भी 2 arguments लेता हैं जो की string str2 को string str1 के अंत में जोड़ता है।

Example of string concatenate strcat() function in C programming – 

#include <stdio.h>
void main ()
{
 char str1[12] = "Learn";
 char str2[12] = "Hindi";
 strcat(str1, str2);
 printf("Concatenates string str2 onto the end of string str1. : %s", str1 );
}

Output – 

Concatenates string str2 onto the end of string str1. : LearnHindi

3.  strlen() – इस फंकशन का उपयोग string की length को प्राप्त करने के लिए किया जाता हैं । strlen(str) यह केवल एक आर्गुमेंट लेता हैं । जो string की length को return करता हैं ।

 Example of string length strlen() function in C language – 

#include <stdio.h>
void main ()
{
 char str1[12] = "Learn";
 int len; 
 len=strlen(str1);
 printf("Length of a string  : %d", len );
}

Output – 

Length of a string  : 5

4.  strcmp() – इस स्ट्रिंग के द्वारा 2 स्ट्रिंग को compare किया जाता हैं । strcmp(str1,str2) यह 2 arguments लेता हैं । strcmp() function 0 value तब return करता हैं जब दोनों स्ट्रिंग समान हो । 

Example of string compare strcmp() in C programming –

#include <stdio.h>
void main ()
{
 char str1[12] = "Hello";
 char str2[12] = "Hello";
 int cmp_value;
 cmp_value=strcmp(str1,str2);
 printf("Returns 0 if str1 and str2 are the same :  %d", cmp_value );
}

Output – 

Returns 0 if str1 and str2 are the same :  0

5.  strrev() – इस function के द्वारा string को reverse किया जा सकता हैं । 

Example of string reverse strrev() function in C language – 

#include <stdio.h>
#include <string.h>
void main ()
{
 char str[12] = "Hello";
str=strrev(str);
 printf("Reverse of string str:  %s", str );
}

Output 

Reverse of string str:      olleH

string.h header file में  strrev() का declaration होता हैं । strrev()  function को use करने के लिए इस header file को अपने program के top में include करना जरूरी होता है.
6.  strupr() – इस function के द्वारा string को uppercase में बदल सकते हैं । 

Example of string upper strupr() in C programming 

#include <stdio.h>
#include <string.h>
void main ()
{
 char str[12] = "Learn";
 printf("Uppercase:  %s", strupr(str) );
}

Output – 

Uppercase: LEARN 

7.  strlwr() – यह strupr() के opposite होता हैं जिसके द्वारा string को lowercase में बदल सकते है । 

Example of string lower strlwr() in C language 

#include <stdio.h>
#include <string.h>
void main ()
{
 char str[12] = "HINDI";
 printf("Lowercase:  %s", strlwr(str) );
}

Output – 

Lowercase:hindi 

इस तरह से string पर functions का उपयोग किया जाता हैं । 

इस तरीके से C programming language मे string और string functions का उपयोग किया जाता हैं । 


Please Share