C mein ek library hai jo bahut saare string handling functions ko supports karti hai, jiska use ham strings ko manipulate karne ke liye karte hai. Is library ka naam <string.h> hai. Is library ke most commonly used functions:
Function Action
strcat() Concatenates two strings
strcmp() Compares two strings
strcpy() Copies one string over another
strlen() Find the length of string.
strcat() Function
The strcat() function two strings ko ek saath jodta hai. It takes the following form: strcat(string1, string2);
string1 aur string2 character arrays hai. Jab strcat() function execute hoga, to string2 append ho jayegi string1 mein. Ye string1 ke null character ko remove kar dega aur waha par string2 ko add kar dega. Ye string string2 se same hi rahegi koi change nhi hoga. For Example:
string1 = | V | E | R | Y | | | | | | | | |
string2 = | G | O | O | D | | | |
Execution of the statement
strcat(part1, part2);
will result in:
string1 = | V | E | R | Y | | G | O | O | D | | | | |
Hame is cheez ka dhiyaan dena hai ke string1 (Jispar string2 append hoi hai) itni badi ho jo string2 ko add kar sake. For example yaha par two strings hai, string1 aur string2 suppose string1 mein 5 characters hai (including null) aur string2 mein 4 characters hai (including null) to agar hame string2 ko string1 mein append karna hai to string1 ki length 5+4 - 1 = 8 honi chahiye, yaha hame 1 minus isliye kara kioki jab dono append ho jayengi to sirf 1 hi null character ke liye space ki need padegi.
Example:
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char string1[11] = "Beyond ";
char string2[4] = "Man";
strcat(string1, string2);
printf("%s", string1);
return 0;
}
Output:
Beyond Man
strcmp() Function
The strcmp() function two strings as a parameter leta hai aur unhe compare karta hai agar iski value 0 hoti hai it means both strings equal. Agar wo equal nhi hoti to unmein numeric value ka difference hota hai wo bhi first nonmatching character ka. It takes the following form: strcmp(string1, string2);
string1 = "their";
string2 = "there";
Ham isme mainly ye check karte hai kiya dono strings equal hai ya nhi; agar nhi to wo alphabetically above hongi. Is case mein "the" tak strings equal hai lekin "i" aur "r" par unequal ho jati hai to ab ham ye difference ASCI value se determine karte hai. yaha ham "i" - "r" karenge to uska ASC|I code -9 hoga. Agar value nagative hai, to string1 is alphabetically above string2.
Example:
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char string1[7] = "wonder";
char string2[6] = "woman";
printf("%d", strcmp(string1, string2));
return 0;
}
Output:
1
Explanation: Ye program 1 print karege kioki "wo" is equal lekin iske baad comparision "n" aur "m" mein jisme "n" ki value 110 hai aur "m" ki value 109 hai. 110 - 109 = 1. Yaha string2 is alphabetically above than string1.
strcpy() Function
The strcpy() function almost string-assignment operator ki tarah work karta hai. It takes the form: strcpy(string1, string2);
Yaha par string2 ka content string1 mein assign ho jayega. For Example: strcpy(city, "DELHI");
Ye statement character array city mein "DELHI" assign kar dega.
Example:
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char city1[7] = "Mumbai";
char city2[6] = "Delhi";
strcpy(city1, city2);
printf("%s", city1);
return 0;
}
Output:
Delhi
Explanation: city1 mein value "Mumbai" lekin strcpy() function se hamne isme "Delhi" strore kar diya. Again jis string mein value assign hogi wo character array itna large enough ho jo string easilly copy ho jaye.
strlen() Function
Ye function parameter mein ek string leta hai aur uske counts ko return kar deta hai. Ye bahut hi frequently use hone wala function hai. It take the form: n = strlen(string); Yaha par n ek integer variable hai jo string ki length ko receives karega.
Example:
#include <stdio.h>
#include <string.h>
int main(int argc, char const *argv[])
{
char name[11] = "Beyond Man";
int n;
n = strlen(name);
printf("%d", n);
return 0;
}
Output:
10
Explanation: Ye 10 print karega na ki 11 kioki 11th character ek null character hoga jise strlen() function ignore kar dega aur exact same length print karta hai.
Comments