Aniq fanlar


Download 0.61 Mb.
bet13/20
Sana02.12.2023
Hajmi0.61 Mb.
#1780558
1   ...   9   10   11   12   13   14   15   16   ...   20
Bog'liq
O

#include
#pragma pack(1)
struct Foo
{
char c;
int i;
char s;
};
int main()
{
printf("Foo hajmi = %d",sizeof(Foo));
return 0;
}
Natija:
Foo hajmi = 6

Struktura o’zgaruvchisi maydon sifatida. Murakkab strukturalarni hosil
33
qilishda oldin uni tashkil etuvchi oddiyroq strukturalarni e’lon qilib, keyin esa
ularni birlashtirish orqali strukturani hosil qilish maqsadga muvofiqdir. Masalan,
g’ildirak strukturasi, motor strukturasi, uzatish korobkasi strukturasi va boshqa
strukturalarni hosil qilib, keyin esa ularni birlashtirish orqali avtomobil
strukturasini qurish qo’yilgan masalani yechishni ancha osonlashtiradi.
Quyidagi misolda oddiy nuqta strukturasi yaratilgan. So’ngra moddiy nuqta
yaratilib, uning ichida nuqta sinfiga tegishli o’zgaruvchiga ta’rif berilgan:
#include
typedef struct
{
int x;
int y;
}Point;
typedef struct
{
Point p;
float w;
87
}FPoint;
int main()
{
FPoint X = {10, 20, 1.5};
printf("coord x = %d\n",X.p.x);
printf("coord y = %d\n",X.p.y);
printf("weight w = %f",X.w);
return 0;
34

Masalan, to’g’ri to’rtburchak chiziqlardan tashkil topgan. Chiziq esa ikki


nuqta orqali aniqlanadi. Har bir nuqta x va u koordinatalar yordamida aniqlanadi.
Quyidagi dasturda to’rtburchak strukturasi ko’rsatilgan. To’g’ri to’rtburchak
diagonal bo’yicha ikki nuqta va ikki tomon yordamida aniqlanadi. Shuning uchun
oldin har bir nuqtaning x, u koordinatalarini saqlash uchun nuqta strukturasi e’lon
qilingan.
Nuqta va to’g’rito’rtburchakning e’lon qilinishi

Download 0.61 Mb.

Do'stlaringiz bilan baham:
1   ...   9   10   11   12   13   14   15   16   ...   20




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling