structure

در برنامهنویسی C، struct
(مخفف structure) یک نوع داده تعریفشده توسط کاربر است که متغیرهایی از انواع مختلف دادهها را تحت یک نام واحد گروهبندی میکند. این امکان را میدهد تا دادهها را به گونهای سازماندهی کنید که معنادار و راحت برای کار با آنها باشد.
تعریف ساختار
برای تعریف یک ساختار از کلمه کلیدی struct
به همراه نام ساختار و متغیرهای آن استفاده میشود.
struct Person {
char name[50];
int age;
float height;
};
اعلام و دسترسی به اعضای ساختار
پس از تعریف ساختار، میتوانید متغیرهایی از آن نوع اعلام کرده و به اعضای آن از طریق عملگر نقطه .
دسترسی پیدا کنید.
#include <stdio.h>
struct Person {
char name[50];
int age;
float height;
};
int main() {
// اعلام و مقداردهی متغیر ساختاری
struct Person p1 = {“Alice”, 30, 5.6};
// دسترسی به اعضای ساختار
printf(“Name: %s\n”, p1.name);
printf(“Age: %d\n”, p1.age);
printf(“Height: %.2f\n”, p1.height);
return 0;
}
اشارهگرها به ساختارها
میتوانید از اشارهگرها برای متغیرهای ساختاری استفاده کنید. برای دسترسی به اعضای ساختار از طریق اشارهگر، از عملگر پیکان ->
استفاده میشود.
#include <stdio.h>
struct Person {
char name[50];
int age;
float height;
};
int main() {
struct Person p1 = {“Bob”, 25, 5.9};
struct Person *ptr = &p1;
// دسترسی به اعضا از طریق اشارهگر
printf(“Name: %s\n”, ptr->name);
printf(“Age: %d\n”, ptr->age);
printf(“Height: %.2f\n”, ptr->height);
return 0;
}
نکات مهم
- ساختارها میتوانند شامل ساختارهای دیگر به عنوان اعضا باشند، که به آن ساختارهای تو در تو (nested) میگویند.
- میتوانید ساختارها را به توابع به صورت مقدار یا به صورت مرجع (با استفاده از اشارهگرها) ارسال کنید.
struct
مقادیر را به طور خودکار مقداردهی نمیکند؛ باید بهصورت دستی مقادیر را به اعضا اختصاص دهید.
این مفهوم در مواقعی که نیاز به کار با دادههای مرتبط مختلف دارید (مثلاً یک ساختار “Person” که شامل نام، سن و قد است) مفید است.
دیدگاهتان را بنویسید