சரங்களை கையாளுதல் (string.h)
string.h (cstring) என்ற நூலக கோப்பில் குறியுறுகளின் அணியில் உள்ள சரங்களைக் கையாளுவதற்கு என பல்வேறு பொதுவான செயற்கூறுகள் உள்ளன. சரங்களைக் கையாளுவதற்கான செயற்கூறுகளைப் பயன்படுத்துவற்கு முன்பு string.h என்னும் தலைப்பு கோப்பை நிரலில் இணைத்து கொள்ள வேண்டும்.
1. strcpy() :
பொது வடிவம்:
strcpy (target string, source string);
strcpy() என்ற செயற்கூறு இலக்கு (target) மற்றும் மூலம் (source) என்ற இரண்டு செயலுருபுகளை எடுத்துக் கொள்ளும். இந்த செயற்கூறு மூலத்திலுள்ள சரங்களை இலக்கு சரத்தின் நினைவகத்தில் நகல் எடுக்கும். சரத்தின் இறுதியைக் குறிக்கும் வெற்று குறியுறு (10)யையும் இந்த செயற்கூறு நகல் எடுக்கும்.
நிரல் 11.6
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
char source[] = "Computer Science";
char target[20]="target";
cout<<"\n String in Source Before Copied :"<<source;
cout<<"\n String in Target Before Copied :"<<target; strcpy(target,source);
cout<<"\n String in Target After strcpy function Executed :"<<target; return 0;
}
வெளியீடு:
String in Source Before Copied :Computer Science
String in Target Before Copied :target
String in Target After strcpy function Executed :Computer Science
2. strlen()
strlen() என்ற செயற்கூறு மூல சரத்தை அதன் செயலுருபாக எடுத்துக் கொண்டு அதன் நீளத்தை திருப்பி அனுப்பும். வெற்று குறியுறுவை (\0) சரத்தின் நீள கணக்கீட்டில் எடுத்துக்கொள்ளாது.
பொது வடிவம்: strlen (string);
நிரல் 11.7
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
char source[ ] = "Computer Science";
cout<<"\nGiven String is "<<source<<" its Length is "<<strlen(source);
return 0;
}
வெளியீடு:
Given String is Computer Science its Length is 16
3. strcmp()
strcmp() என்ற செயற்கூறு string1 மற்றும் string2 என்ற இரண்டு அளபுருக்களை எடுத்துக் கொள்ளும். இந்த செயற்கூறு string1 மற்றும் string2 உள்ளடக்கத்தை அகர வரிசையில் ஒப்பீடு செய்யும்.
பொது வடிவம்: strcmp (string 1, string 2);
strcmp() செயற்கூறு திருப்பி அனுப்பும் மதிப்புகள்:
• string1-ல் உள்ள முதல் குறியுறுவின் மதிப்பு string2-ல் உள்ள முதல் குறியுறுவின் மதிப்பை விட அதிகமாக இருந்தால் நேர்ம மதிப்பைத் (Positive value) திருப்பி அனுப்பும். (ASCII மதிப்புகளை ஒப்பிடும்.)
• string1-ல் உள்ள முதல் குறியுறுவின் மதிப்பு string2-ல் உள்ள முதல் குறியுறுவின் மதிப்பை விட குறைவாக இருந்தால் எதிர்ம மதிப்பைத் (Negative value) திருப்பி அனுப்பும்.
• string1 மற்றும் string2 சமம் எனில் 0 என்ற மதிப்பைத் திருப்பி அனுப்பும்.
நிரல் 11.8
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
char string1[] = "Computer";
char string2[] = "Science";
int result;
result = strcmp(string1,string2);
if(result==0)
{
cout<<"String1 : "<<string1<<" and String2 : "<<string2 <<"Are Equal";
}
if (result<0)
{
cout<<"String1 :"<<string1<<" and String2 : "<<string2 <<" Are Not Equal";
}
}
வெளியீடு:
String1 : Computer and String2 : Science Are Not Equal
4. strcat()
strcat() என்ற செயற்கூறு இலக்கு மற்றும் மூலம் என்ற இரு செயலுருபுகளை எடுத்துக் கொள்ளும். இந்த செயற்கூறு மூல சரத்தின் நகலை இலக்கு சரத்தின் இறுதியில் இணைக்கும்.
பொது வடிவம்: strcat (target, source);
நிரல் 11.9.
#include <string.h>
#include <iostream>
using namespace std;
int main()
{
char target[50] = "Learning C++ is fun";
char source[50] = " , easy and Very useful";
strcat(target, source);
cout << target ;
return 0;
}
வெளியீடு:
Learning C++ is fun , easy and Very useful
5. strupr()
strupr()- இந்த செயற்கூறு உள்ளீடாக கொடுக்கப்பட்டுள்ள சரத்தை ஆங்கில பெரிய எழுத்துக்களாக மாற்றும்.
பொது வடிவம்: strupr (string);
நிரல் 11.10
using namespace std;
#include<iostream>
#include<ctype.h>
#include<string.h>
int main()
{
char str1[50];
cout<<"\nType any string in Lower case :";
gets(str1);
cout<<"\n Converted the Source string “<<str1<<into Upper Case is "<<strupr(str1); return 0;
}
வெளியீடு:
Type any string in Lower case : computer science
Converted the Source string computer science into Upper Case is COMPUTER SCIENCE
6. strlwr()
strlwr()-இந்த செயற்கூறு உள்ளீடாக கொடுக்கப்பட்டுள்ள சரத்தை ஆங்கில சிறிய எழுத்துக்களாக மாற்றும். பொது வடிவம்: strlwr(string);
நிரல் 11.11
using namespace std;
#include<iostream>
#include<ctype.h>
#include<string.h>
int main()
{
char str1[50];
cout<<"\nType any string in Upper case :";
gets(str1);
cout<<"\n Converted the Source string “<<str1<<into Lower Case is "<<strlwr(str1);
}
வெளியீடு:
Type any string in Upper case : COMPUTER SCIENCE
Converted the Source string COMPUTER SCIENCE into lower Case is computer science