![](/user_photo/_userpic.png)
15-ameliy prezentaciya
.pdf![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f11x1.jpg)
Qatar bólegin almastırıw funkciyası
Bir qatar bóleginiń ornına basqa qatar bólegin qosıw ushın tómendegi
funkciyalardan paydalanıw múmkin:
replace(unsigned int pos1, unsigned int n1, const string
&str);
replace(unsigned int pos1, unsigned int n1, const string
&str,
unsigned int pos2, unsigned int n2);
replace(unsigned int pos1, unsigned int n1, const char *str,
int n);
![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f12x1.jpg)
Bul funkciyalar insert sıyaqlı isleydi, onnan parıqlı túrde ámel shaqırıwshı qatardıń kórsetilgen ornınan (pos1) n1 belgiler ornına str qatarın yamasa pos2 orınnan baslanǵan n2 belgiden ibarat bólekti ǵana qoyadı (almastıradı).
![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f13x1.jpg)
Mısal:
char *sc = “0123456789”; unsigned int i = 3, j = 2; string s1, s, s2;
|
|
|
//s2 = |
s2 |
= sc; |
|
“0123456789” |
s1 |
= “mısallar”; |
|
|
s = “xyz”; |
|
|
|
s2.replace(i, j, |
“abcdef”); |
//s2 = |
|
“012abcdef56789” |
|
|
|
|
|
|
//s1 = |
s1.replace(i - 1, j + 1, s2, 4, 5); |
“mi45678lar” |
||
s.replace(i - 2, |
j + 2, sc, 5); |
//s = “x012345” |
![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f14x1.jpg)
swap(string & str) funkciyası eki qatardı óz-ara almastırıw ushın isletiledi.
Mısal ushın:
string s1, s2;
s1 =“01234”;
s2 =“98765432”;
s1.swap(s2); //s2 = “01234” hám s1 = “98765432” boladı
![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f15x1.jpg)
Qatar bólegin ajıratıp alıw funkciyası
Funkciya prototipi tómendegishe:
string substr(unsigned int pos=0, unsigned int n=npos) const;
Bul funkciya, onı shaqırıwshı qatardıń pos ornınan baslap n belgini nátiyje sıpatında qaytaradı. Eger pos kórsetilmese, qatar basınan baslap ajıratıp alınadı, eger n kórsetilmese, qatar aqırına shekem bolǵan belgiler nátiyje sıpatında qaytaradı:
string s1, s2, s3; |
|
|
s1 |
= “0123456789”; |
|
s2 |
= s1; |
|
s3 |
= s1; |
|
s2 |
= s1.substr(4, 5); |
//s2 = “45678” |
s3 |
= s1.substr(3); |
//s3 = “3456789” |
// “30123456789” qatar ekranǵa shıǵıwı ushın cout << s1.substr(1, 3) + s1.substr();
![](/html/88162/2422/html_zMogZSfQW4.8LjL/htmlconvd-djEB8f16x1.jpg)
string tiptegi qatardı char tipke ótkeriw string tiptegi qatardı char tipine ótkiziw ushın
const char *c_str() const;
funkciyanı isletiw kerek. Bul funkciya char tiptegi ‘\0’ belgisi menen tamamlanatuǵın qatarǵa turaqlı kórsetkishti qaytaradı:
сhar *s1;
string s2 = “0123456789”;
s1 = s2.c_str();
Dál usı maqset ushın
const char * data()const;
funkciyasınan da paydalanıw múmkin. Bıraq bul funkciya qatar aqırına ‘\0’ belgisin qospaydı.