Vi fəsil. C++ dilində proqramlaşdırma


Strcpy( ) və Strncpy( )-funksiyaları vasitəsi ilə sətirlərin köçürülməsi



Yüklə 1,02 Mb.
səhifə42/74
tarix04.01.2023
ölçüsü1,02 Mb.
#121980
1   ...   38   39   40   41   42   43   44   45   ...   74
Alqoritmik dillər(C kitab) (10)

Strcpy( ) və Strncpy( )-funksiyaları vasitəsi ilə sətirlərin köçürülməsi
Strcpy-funksiyası 2-ci arqumentin qiymətini 1-ci arqumentə köçürür və yekun sıfırıncı simvolu da köçürür. Əməliyyatın normal yerinə yetirilməsi üçün 1-ci sətrin ölçüsü 2-cidən böyük olmalıdır. Strncpy funksiyasında yekun 0-cı simvolun köçürülməsi vacib deyildir. Yekun sıfırıncı simvol o vaxt köçürülür ki, köçürülən simvolların sayı sətrin uzunluğundan heç olmazsa bir vahid çox olsun. (n>S2-nin uzunluğu). Məsələ, ikinci arqument “test” olarsa və 3-cü arqument 5-dən böyük qiymət alarsa, onda yekun sıfır simvol köçürülür. Aşağıdaki proqramda x-sətir massivinin y-sətir massivinə tam köçürülməsi və strncpy funksiyasından istifadə etməklə x-sətir massivinin birinci 11 simvolunu z-massivinə köçürülməsi nümayiş etdirilmişdir. ‘\0’- simvolu z-massivinə əlavə edilir.

Çünki 3-cü arqumentin qiyməti ikinci arqumentin uzuluğundan kiçikdir.


#include
using namespace std;
#include
int main ( )
{char x[ ]=”Yeni iliniz mübarək”;
char y[25], z[12];
cout<< “x-sətir massivi:”<
strncpy(z, x, 11); //’\o’-element köçürülmür
z[11]=’\o’;
cout<<”z-sətir massivi”
<
return 0;
}.
Nəticə:
x-sətir massivi: Yeni iliniz mübarək
y-sətir massivi: Yeni iliniz mübarək
z-sətir massivi: Yeni iliniz

Strcat və strncat funksiyaları vasitəsi ilə sətirlərin birləşdirilməsi
Strcat funksiyası 2-ci arqumenti (sətri) 1-ci arqumentə əlavə edir 2-ci arqumentin 1-ci simvolu birinci arqumentin ‘\o’-simvolunu əvəz edir. Birinci arqumentin ölçüsü elə olmalıdır ki, burada 1-ci və 2-ci sətirlər və ‘\o’-simvolu yerləşə bilsin.
Strncat funksiyası 2-sətirdən göstərilən sayda simvolu 1-ci sətrə əlavə edir. Nəticədə alınan sətrə ‘\o’-simvolu əlavə edilir.
Aşağıdaki proqramda bu funksiyaların işlənməsi nümayış etdirilmişdir.
//strcat və strncat funksiyalarından istifadə
#include
#include
int main ( )
{char S1[20]=”Happy”;
char S2[ ]=”New Year”;
char S3[40]=” ”;
cout << “S1=”<
Strcat (S1, S2); //S1 və S2-nın konkatenaksiyası
cout <<”\n\n strcat (S1, S2)-dən sonra:\n S1=”<
<<”\n S2=”<
//S1-ın 6-simvolunun S3-ə konkatenaksiyası

Strncat (S3, S1, 6);//axırıncı simvoldan sonra `\0`-yerləşdirilir.
cout <<”\n\n strncat (S3, S1, 6)-dan sonra: \n S1=”
<
Strcat(S3, S1);
cout<<”\n n Strcat(S3, S1)-dən sonar: \n S1=”<<
S1<<”\n S3=”<
return 0;
}
Nəticələr aşağıdaki kimi olacaq:
S1=Happy
S2=New Year
Strcat(S1, S2)-dən sonra:
S1=Happy New Year
S2=Happy Year
Strncat(S3, S1, 6)-dan sonra:
S1=Happy New Year
S3=Happy
Strcat(S3, S1)-dən sonra:
S1=Happy New Year
S3=Happy Happy New Year


Yüklə 1,02 Mb.

Dostları ilə paylaş:
1   ...   38   39   40   41   42   43   44   45   ...   74




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2025
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin