free counters

 

statcounter free invisible

Banner

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 her-hansı sətir internet şəbəkəsinə qoşulmuş digər komputerdə yerinə yetirilən çat proqramına ötürülən zaman bir neçə dəfə bir yerdən(yaddaşda) digər yere köçürülür.
İstifadəçinin daxil etdiyi parolu yoxlamaq üçün biz proqramda sətirlərin müqaisə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 elementden ibaret setir elan edirik*/

strcpy(set,"Azerbaycan");

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

return 0;

}

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
Azerbaycan
user@gnu_linux:~/prg#

Izahı

Burada biz 12 elementden ibaret set adlı setir elan edirik. Daha sonra strcpy funksiyası vasitəsilə set sətrinə "Azerbaycan" 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üqaisə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-den 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.

axırıncı dəyişikliklər (18.07.10 20:35)

 

Şərh əlavə et


Təhlükəsizlik şifrəsi
Yenilə

Saytımızda hansı proqram haqda dərslərin olmasını istəyirsiniz?
 
Üzv : 24
Kontent : 1146
Baxılanlar : 511802
 9 qonaq