Sətirlər üzərində əməllər
Sətri massivlərin emalı alqoritmlərindən istifadə etməklə və ya sətirlərin emalı funksiyalarının köməyilə (bu funksiyaların bir neçəsi aşağıdakı cədvəldə verilmişdir) simvollar massivi kimi emal etmək olar.
string.h kitabxanasında sətir funksiyaları
Funksiyanın prototipi
|
Funksiyanın təsviri
|
İstifadə nümunələri
|
size_t strlen (const char ∗s)
|
S sətrinin uzunluğunu baytlarla hesablayır
|
char s [80];
cout<<"s=";
cin. getline (s,80) ;
cout<<"s="<
<<"Длина строки\t"<<
strlen(s)<
|
char ∗strcat(char ∗dest, const char ∗ scr)
|
Dest sətrinin sonuna src sətrini birləşdirir
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
cout<<"s2=";
cin. getline (s2,80) ;
cout<<"s="<
,s2);
|
char ∗strcpy(char ∗dest, const char ∗scr)
|
Src sətrinin surətini dest-in göstərdiyi yaddaş yerinə
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
strcpy(s2,s1) ;
cout<<"s2="< |
char ∗strncat(char ∗dest, const char ∗ dest, size_t maxlen)
|
Src sətrinin maxlen sətrini dest sətrinin sonuna birləşdirir
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
cout<<"s2=";
cin. getline (s2,80) ;
cout<<"s="<
s1,s2,6);
|
char ∗strncpy(char ∗dest, const char ∗ scr, size_t maxlen)
|
Src sətrinin maxlen simvollarının surətini dest sətrinin göstərdiyi yaddaş sahəsinə göndərir
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
strncpy(s2,s1,5) ;
cout<<"s2="< |
int strcmp(const char ∗s1, const char ∗s2)
|
S1 və s2 sətirlərini müqayisə edir
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
cout<<"s2=";
cin. getline (s2,80) ;
cout<
endl;
|
int strncmp(const char ∗s1, const char ∗s2, size_t maxlen)
|
S1 və s2 sətirlərinin sayını müqayisə edir
|
char s1[80],s2 [80];
cout<<"s1=";
cin. getline (s1,80) ;
cout<<"s2=";
cin. getline (s2,80) ;
cout<
|
double atof(const char∗s)
|
Sətri həqiqi ədədə çevirir. Çevrilmə alınmazsa, 0.0 ədədini qaytarır
|
char a[10];
cout<<"a=";
cin>>a;
cout<<"a="<
< |
int atoi(const char∗s)
|
Sətri tam ədədə çevirir. Çevrilmə alınmazsa, 0.0 ədədini qaytarır
|
char a[10];
cout<<"a=";
cin>>a;
cout<<"a="<
< |
long atol(const char∗s)
|
Sətri uzun tam ədədə çevirir. Çevrilmə alınmazsa, 0 ədədini qaytarır
|
char a[10];
cout<<"a=";
cin>>a;
cout<<"a="<
< |
Ədədin simvollara çevrilməsi üçün stdio.h kitabxanasından sprintf funksiyasından istifadə etmək olar. Ümumi şəkildə aşağıdakı kimi yazılır:
Sprintf(s,s1,s2);
Bu funksiya əvvəllər istifadə olunmuş printf funksiyası ilə eynidir, lakin bu funksiya nəticəni ekrana deyil, s çıxış sətrinə mənimsədir.
Məsələn,
char str[80];
sprintf (str, "%s %d %s", "Yashasin Azerbaycan ",Respulikasinin, "vetendashlari!!!");
fraqmenti yerinə yetirildikdə str dəyişəninə Yashasin Azerbaycan ",Respulikasinin, "vetendashlari!!!" sətri yazılacaqdır.
Dostları ilə paylaş: |