Sətirlər

Sətirlər cərgələrin xüsusi halıdır. Cərgə elementlərinin tipinin char olduğu hal. char tipi simvol tipi adlanır. Başqa sözlə, sətirlər simvollar cərgəsidir. İlk baxışda sətirlər elə də əhəmiyyət kəsb etmir və onlarla işləmək üçün bir neçə standart funksiya təyin olunur.
Sətirlərin tətbiq sahəsi çox genişdir, həm nüvədə, həm də istifadəçi proqramlaşdırmasında sətirlərdən çox geniş istifadə olunur. Misal üçün, çat proqramında daxil etdiyimiz hər hansı sətir internet şəbəkəsinə qoşulmuş digər kompüterdə yerinə yetirilən çat proqramına ötürülən zaman, bir neçə dəfə bir yerdən (yaddaşda) digər yerə köçürülür.
İstifadəçinin daxil etdiyi parolu yoxlamaq üçün biz proqramda sətirlərin müqayisəsi funksiyalarından istifadə edirik və s. Sətirlərlə işləyən zaman diqqət verilməsi lazım gələn məsələlərdən biri də, sətirin sonu məsələsidir. Sətirlərin sonunu bildirmək üçün '\0' simvolundan istifadə olunur. Sətir funksiyaları bu simvola rast gəldikdə, sətrin yerdə qalan hissəsini inkar edirlər.


//prog_7_1.c

#include <stdio.h>
#include <string.h>

int main(int argc, char *argv[]){

char set[12];	/* 12 elementdən ibarət sətir elan edirik */

strcpy(set,"Azərbaycan"); 

printf("%s\n",set);

return 0;
}

Nümunə
Proqramı yerinə yetirək.

user@gnu_linux:~/prg# gcc prog_7_1.c -o prog_7_1
user@gnu_linux:~/prg# 
user@gnu_linux:~/prg# ./prog_7_1
Azərbaycan
user@gnu_linux:~/prg# 
İzahı:
Burada biz 12 elementdən ibarət set adlı sətir elan edirik. Daha sonra, strcpy funksiyası vasitəsilə set sətrinə "Azərbaycan" qiymətini mənimsədirik. strcpy funksiyasi string.h faylinda təyin olduğundan, #include <string.h> vasitəsilə string.h faylini proqrama əlavə edirik. strcpy funksiyasının sintaksisi aşağıdakı kimidir.
char * strcpy(char *s1, char *s2);
strcpy funksiyası s1 sətrinə s2 sətrini mənimsədir. Sətirlərlə işləyən digər funksiyalara baxaq.

strlen funksiyası.
int strlen(char *s);
s sətrində olan elementlərin sayını qaytarır. '\0' simvolunu hesaba almır.

char * strncpy(char *s1, char *s2, int n);
s2 sətrinin ilk n elementini s1-ə köçürür (s1-in əvvəlindən başlayaraq).

int strcmp(char *s1, char *s2);
Bu funksiyadan sətirlərin müqayisəsi üçün istifadə edirlər. Əgər s1 sətri s2 sətri ilə eynidirsə, onda funksiya 0 qiymətini qaytarır, əgər s1-in elementlərinin sayı s2-dən azdırsa, onda <0, əks halda, >0 qiymətini qaytarır.

char * strcat (char *s1, char *s2);
Bu funksiya s1-in sonuna s2-ni əlavə edir.

«« Cərgələr    Sətirlər    Strukt tiplər »»
Share


Muəllif: Əhməd Sadıxov


YER Hostinq

Pulsuz elanlar saytı

Internet Jobs Database