C makroslar
Preprotsessor va makroslar
C tilida preprotsessor haqiqiy kompilyatsiya boshlanishidan oldin ishga tushadi. U fayllarni ulash va makroslarni aniqlash kabi ishlarni bajaradi.
Preprotsessor buyruqlari # belgisi bilan boshlanadi va direktivalar deb ataladi.
#include - sarlavha fayllarini ulash
Siz #include direktivasini ko‘p marta ko‘rgansiz - u kompilyatorga faylni ulashni buyuradi.
U kutubxonalar yoki o‘zingiz yaratgan sarlavha fayllarini qo‘shish uchun ishlatiladi:
Misol
#include <stdio.h>
#include "myfile.h"
Standart kutubxonalar uchun burchakli qavslardan < >, o‘z fayllaringiz uchun esa qo‘shtirnoqlardan " " foydalaning.
Maslahat: Eng ko‘p ishlatiladigan kutubxonalarni C ma’lumotnomamizda topishingiz mumkin.
#define - makros yaratish
Makros — #define direktivasi yordamida aniqlanadigan, qiymatni (masalan, PI) yoki kod bo‘lagini ifodalovchi nom.
Quyidagi misolda dastur kompilyatsiya qilinishidan oldin PI o‘rniga 3.14 qo‘yiladi.
Bu kodda PI har safar uchraganda uning o‘rniga 3.14 qo‘yilishini anglatadi:
Misol
#define PI 3.14
int main() {
printf("Value of PI: %.2f\n", PI);
return 0;
}
O‘zingiz sinab ko‘ring »
Makroslar xuddi funksiya kabi parametrlar ham qabul qilishi mumkin:
Misol
#define SQUARE(x) ((x) * (x))
int main() {
printf("Square of 4: %d\n", SQUARE(4));
return 0;
}
O‘zingiz sinab ko‘ring »
Parametrli makroslar qisqartma kabi ishlaydi, lekin xatolarga yo‘l qo‘ymaslik uchun qavslarga e’tiborli bo‘ling.
#ifdef va #ifndef - shartli kompilyatsiya
#ifdef va #ifndef direktivalari makros aniqlangan yoki aniqlanmaganiga qarab kodning ayrim qismlarini qo‘shish yoki o‘tkazib yuborish imkonini beradi.
Bu shartli kompilyatsiya deb ataladi va u nosozliklarni tuzatishda yoki dasturning turli versiyalarini yaratishda foydali.
Misol
#define DEBUG
int main() {
#ifdef DEBUG
printf("Debug mode is ON\n");
#endif
return 0;
}
O‘zingiz sinab ko‘ring »
Agar DEBUG aniqlangan bo‘lsa, xabar chiqariladi. Agar u aniqlanmagan bo‘lsa, kodning o‘sha qismi o‘tkazib yuboriladi.
O‘z sarlavha fayllaringizni yarating
Keyingi bobda o‘z sarlavha fayllaringizni yaratishni va "modulli dasturlash" yordamida kodingizni bir nechta faylga taqsimlab tartibga solishni o‘rganasiz.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
