C strukturalar va ko‘rsatkichlar


ULASHISH

Strukturalar va ko‘rsatkichlar

Kodingizni samaraliroq qilish uchun strukturalar bilan ko‘rsatkichlardan foydalanishingiz mumkin, ayniqsa strukturalarni funksiyalarga uzatishda yoki ularning qiymatlarini o‘zgartirishda.

Strukturaga ko‘rsatkichdan foydalanish uchun, boshqa ma’lumot tiplaridagi kabi, shunchaki * belgisini qo‘shing.

Uning a’zolariga murojaat qilish uchun nuqta . sintaksisi o‘rniga -> operatoridan foydalanishingiz kerak:

Misol

// Define a struct
struct Car {
  char brand[30];
  int year;
};

int main() {
  struct Car car = {"Toyota", 2020};

  // Declare a pointer to the struct
  struct Car *ptr = &car;

  // Access members using the -> operator
  printf("Brand: %s\n", ptr->brand);
  printf("Year: %d\n", ptr->year);

  return 0;
}

O‘zingiz sinab ko‘ring »


Struktura ko‘rsatkichlarini funksiyalarga uzatish

Struktura ko‘rsatkichini funksiyaga uzatib, uning qiymatlarini quyidagicha o‘zgartirishingiz mumkin:

Misol

struct Car {
  char brand[30];
  int year;
};

// Function that takes a pointer to a Car struct and updates the year
void updateYear(struct Car *c) {
  c->year = 2025;  // Change the year
}

int main() {
  struct Car myCar = {"Toyota", 2020};

  updateYear(&myCar);  // Pass a pointer so the function can change the year

  printf("Brand: %s\n", myCar.brand);
  printf("Year: %d\n", myCar.year);

  return 0;
}

O‘zingiz sinab ko‘ring »



Nima uchun struktura ko‘rsatkichlaridan foydalaniladi?

Strukturalar bilan ko‘rsatkichlardan foydalanish quyidagi hollarda foydali:

  • Katta hajmdagi ma’lumotlarni nusxalashdan qochmoqchi bo‘lsangiz.
    Butun strukturani nusxalash o‘rniga shunchaki ko‘rsatkichni uzatishingiz mumkin. Bu dasturingizni tezroq qiladi va kamroq xotira sarflaydi.

  • Funksiya ichida qiymatlarni o‘zgartirmoqchi bo‘lsangiz.
    Agar funksiyaga strukturaga ko‘rsatkichni uzatsangiz, funksiya asl qiymatlarni o‘zgartira oladi.

  • Xotira ajratish orqali strukturalarni dinamik yaratmoqchi bo‘lsangiz.
    Ko‘rsatkichlar yordamida dastur ishlayotgan paytda strukturalar yaratish uchun malloc() funksiyasidan foydalanishingiz mumkin.
    Xotirani boshqarish haqida keyingi boblarda batafsil bilib olasiz.

Maslahat: Agar katta dasturlar yoki ko‘p qiymatlar bilan ishlayotgan bo‘lsangiz, struktura ko‘rsatkichlari kodingizni tozaroq va samaraliroq qilishga yordam beradi.




W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!