19. C standart kutubxonalari

C tilida ko‘plab tayyor funksiyalar mavjud.

Masalan:

printf()
scanf()
strlen()
malloc()
sqrt()

Bu funksiyalarni noldan o‘zimiz yozishimiz shart emas.

Kerakli funksiyalarni kutubxonalar orqali ishlatamiz.


Kutubxona nima?

Kutubxona — dasturchilar uchun oldindan tayyorlangan funksiyalar to‘plami.

Masalan, ekranga ma'lumot chiqarish uchun:

printf()

funksiyasidan foydalanamiz.

U stdio.h kutubxonasida joylashgan.

Shuning uchun:

#include <stdio.h>

yozamiz.


stdio.h

stdio.h eng ko‘p ishlatiladigan kutubxonalardan biridir.

U quyidagi funksiyalarni o‘z ichiga oladi:

printf()
scanf()
getchar()
putchar()
fopen()
fclose()

Masalan:

#include <stdio.h>

int main() {
    printf("Salom!");

    return 0;
}

string.h

Satrlar bilan ishlash uchun:

#include <string.h>

ishlatiladi.

Masalan:

strlen()
strcpy()
strcat()
strcmp()

kabi funksiyalar mavjud.


strlen()

strlen() satr uzunligini topadi.

Masalan:

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

int main() {
    char ism[] = "Ali";

    printf("%zu", strlen(ism));

    return 0;
}

Natija:

3

Chunki:

A
l
i

uchta belgidan iborat.


strcpy()

strcpy() bir satrni boshqa satrga nusxalash uchun ishlatiladi.

Masalan:

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

int main() {
    char manba[] = "Salom";
    char nusxa[20];

    strcpy(nusxa, manba);

    printf("%s", nusxa);

    return 0;
}

Natija:

Salom

strcmp()

strcmp() ikkita satrni solishtiradi.

Masalan:

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

int main() {
    char a[] = "Ali";
    char b[] = "Ali";

    if (strcmp(a, b) == 0) {
        printf("Bir xil");
    }

    return 0;
}

Natija:

Bir xil

math.h

Matematik hisoblashlar uchun:

#include <math.h>

kutubxonasidan foydalanish mumkin.

Masalan:

sqrt()

sonning kvadrat ildizini topadi.

#include <stdio.h>
#include <math.h>

int main() {
    double natija = sqrt(25);

    printf("%.0f", natija);

    return 0;
}

Natija:

5

pow()

pow() sonni darajaga ko‘tarish uchun ishlatiladi.

Masalan:

#include <stdio.h>
#include <math.h>

int main() {
    double natija = pow(2, 3);

    printf("%.0f", natija);

    return 0;
}

Natija:

8

Chunki:

2 × 2 × 2 = 8

stdlib.h

stdlib.h ham muhim kutubxonalardan biri.

Unda:

malloc()
free()
rand()
abs()
exit()

kabi funksiyalar mavjud.

Masalan, abs() sonning musbat qiymatini olishga yordam beradi:

#include <stdio.h>
#include <stdlib.h>

int main() {
    printf("%d", abs(-10));

    return 0;
}

Natija:

10

time.h

Vaqt bilan ishlash uchun:

#include <time.h>

kutubxonasidan foydalanamiz.

Masalan:

time()

funksiyasi joriy vaqt haqida ma'lumot olishda ishlatiladi.

time.h tasodifiy sonlar bilan ishlashda ham foydali bo‘lishi mumkin.


ctype.h

Belgilarni tekshirish uchun:

#include <ctype.h>

ishlatiladi.

Masalan:

isdigit()

belgi raqam ekanligini tekshiradi.

isalpha()

belgi harf ekanligini tekshiradi.

Misol:

#include <stdio.h>
#include <ctype.h>

int main() {
    char belgi = '7';

    if (isdigit(belgi)) {
        printf("Bu raqam");
    }

    return 0;
}

Natija:

Bu raqam

Eng muhim kutubxonalar

Boshlang‘ich dasturchi sifatida quyidagi kutubxonalarni bilish foydali:

Kutubxona Vazifasi
stdio.h Kiritish va chiqarish
string.h Satrlar bilan ishlash
stdlib.h Umumiy funksiyalar va xotira
math.h Matematik funksiyalar
time.h Vaqt bilan ishlash
ctype.h Belgilarni tekshirish

Barcha funksiyalarni yodlab olish shart emas.

Kerak bo‘lganda ularning qanday ishlashini topib foydalanish mumkin.


Bir nechta kutubxonadan foydalanish

Bitta dasturda bir nechta kutubxonadan foydalanish mumkin.

Masalan:

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

int main() {
    char ism[] = "Ali";

    printf("Ism: %s\n", ism);
    printf("Uzunligi: %zu\n", strlen(ism));
    printf("Ildiz: %.0f\n", sqrt(25));

    return 0;
}

Natija:

Ism: Ali
Uzunligi: 3
Ildiz: 5

Funksiyani yodlash shartmi?

Yo‘q.

Masalan, siz:

strlen()

funksiyasini bir oy ishlatmasangiz, uni unutishingiz mumkin.

Bu muammo emas.

Muhimi, siz:

  • qaysi kutubxonada ekanini;
  • nima vazifa bajarishini;
  • qanday ishlatilishini

bilishingiz.

Dasturlashda kerakli ma'lumotni topa olish ham muhim ko‘nikma.


Kutubxona va funksiya

Quyidagicha eslab qolish oson:

Kutubxona
    ↓
tayyor funksiyalar
    ↓
dasturimizda foydalanamiz

Masalan:

string.h
    ↓
strlen()
strcpy()
strcmp()

Amaliy mashqlar

1-mashq

strlen() yordamida ismingiz nechta belgidan iboratligini toping.


2-mashq

strcmp() yordamida ikkita ismni solishtiring.

Masalan:

Ali
Ali

Ular bir xil ekanligini aniqlang.


3-mashq

math.h yordamida:

25

sonining kvadrat ildizini toping.


4-mashq

pow() yordamida:

ni hisoblang.


5-mashq

ctype.h yordamida foydalanuvchi kiritgan belgi raqam yoki raqam emasligini tekshiring.


Muhim narsalarni eslab qoling

Kutubxona — tayyor funksiyalar to‘plami.

Kutubxonani qo‘shish uchun:

#include

ishlatiladi.

Eng muhim kutubxonalar:

stdio.h
string.h
stdlib.h
math.h
time.h
ctype.h

Funksiyalarni hammasini yodlash shart emas.

Kerakli funksiyani topib, uning qanday ishlashini o‘rganish kifoya.


Xulosa

C tilida ko‘plab tayyor kutubxonalar mavjud.

Ular dasturchining ishini ancha osonlashtiradi.

Masalan:

printf()   → ekranga chiqarish
strlen()   → satr uzunligi
sqrt()     → kvadrat ildiz
malloc()   → xotiradan joy ajratish
isdigit()  → raqamni tekshirish

Kutubxonalarni to‘g‘ri ishlatishni bilish C dasturlarini tezroq va osonroq yozishga yordam beradi.