ورود / ثبت نام
0
0

معرفی ساختار های زبان C

358 بازدید
ساختار های C

ساختار های C

به بیان ساده یک ساختار یک نوع داده تعریف شده توسط کاربر در C میباشد. با ساختار ها میتوانیم چندین نوع داده را برای ذخیره ی نوع خاصی از داده ها ترکیب کنیم. یک ساختار به ما کمک میکند تا یک نوع داده پیچیده را ذخیره کنیم با یک روش منطقی تر. به طریقی این شبیه آرایه میباشد. تنها تفاوتی که دارد این است که آرایه برای ذخیره ی دسته ای از داده های مشابه استفاده میشود جایی که ساختار ها میتواند کالکشنی از داده های نوع ناهمگون را ذخیره میکند.

برای مثال نیاز به ذخیره ی اطلاعاتی درباره ی دانش آموزان نظیر نام شان , شماره گردش و نمرات. میتوانیم آن اطلاعات را به صورت مجزا ذخیره کنیم. یک ساختار به ما راهی برای ذخیره ی کالکشنی از اطلاعات در یک واحد تحت یک نام میدهد زیرا تمام اطلاعات مربوط به دانش آموز میباشد.

کلمه ی کلیدی ساختار مشخص کننده ی ساختار ها میباشد.

سینتکس ساختار ها

struct Structure_name

{

data_type member1;

data_type member2;

data_type memeber;

};

 

میتوانیم ساختاری برای فردی که در بالا گفتیم بسازیم :

struct student

{

char Name[50];

int Roll_no;

int Marks;

};

 

زمانی که ما یک ساختار را مشخص میکنیم , تنها یک نوع مشخص کننده توسط کاربر میسازد اما هیچ فضایی به آن اختصاص نمیابد. برای اختصاص دادن حافظه باید متغیر ها را از نوع ساختارمان مشخص کنیم. برای ساختار قبل دانش آموز متغیر میتواند به صورت زیر مشخص شود :

student s1, s2;

 

اگر ما به یک آرایه نیاز داشته باشیم آنگاه میتوانیم آرایه ای از دانش آموزان را مشخص کنیم.

student s[20];

 

یا همچنین میتوانیم مانند زیر استفاده کنیم :

struct student

{

char Name[50];

int Roll_no;

int Marks;

}

s1, s2, s[20];

 

دسترسی اعضا به یک ساختار

میتوانیم به اعضای یک ساختار دسترسی داشته باشیم با استفاده از دو روش زیر :

Member/Period operator(.)

Structure pointer operator(->)

 

هر عضوی از ساختار میتواند از طریق : structure_name.memberName قابل دسترسی باشد.فرض کنید میخواهیم به علامت s2 دسترسی داشته باشیم سپس آنجا نقطه ی s2 خواهد بود.

عملگر اشاره گر کمی بعدا در این مقاله در موردش بحث خواهد شد.

ساختار های درون ساختار

ساختار ها میتوانند درون یکدیگر در زبان برنامه نویسی C قرار گیرند فرض کنید میخواهیم آدرس یک دانش آموز با داده دانش آموز را ذخیره کند. پس میتوانیم ساختار قبلی را همانند زیر مشخص کنیم :

struct address

{

char[50] locality;

char[50] city;

int pincode;

};

struct student

{

char Name[50];

int Roll_no;

int Marks;

struct address add;

} ;

student s1, s2;

}

 

میتوانیم به متغیر های ساختار s2 به طور محلی دسترسی داشته باشیم

s1.add.locality ;

پاس دادن ساختار ها با ارزششان

ارزش یک ساختار میتواند به عنوان یک آرگومان توابع پاس داده شود همانند یک متغیر معمولی. اگر متغیری توسط ارزشش پاس داده شود آنگاه تغییر در ساختار متغیر در تابع تاثیری بر ساختار اصلی متغیر در توابع فراخوانی شده ندارد.

void show(struct student st)

{

printf("nStudent Name is :%s",st.Name);

printf("n Roll No is: %d",st.Roll_no);

}

 

دسترسی به اعضای ساختار با اشاره گر ها

اگر ما اشاره گری از نوع ساختار داشته باشیم باید فلشی برای دسترسی به آن داشته باشیم.

int main()

{

struct student st;

struct student* ptr = &st;

ptr->name = "Ratnesh"; //Accessing Structure Members

ptr-> Roll_no = 500;

}

 

  • پسورد: www.mspsoft.com
آیا این مطلب را می پسندید؟
https://www.mspsoft.com/?p=13832
اشتراک گذاری:
واتساپتوییترفیسبوکپینترستلینکدین
داریوش فرخی
داریوش فرخی هستم از سال 92 شروع به یادگیری برنامه نویسی و از سال 93 در بخش برنامه نویسی و تولید محتوای سایت mspsoft.com مشغول هستم. فعالیتم نیز بیشتر در زمینه های برنامه نویسی با سی شارپ و asp.net بوده است. اوقات فراغتم را هم غالبا با تماشای فیلم یا بازی های کامپیوتری پر میکنم .
مطالب بیشتر
برچسب ها:

نظرات

0 نظر در مورد معرفی ساختار های زبان C

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

هیچ دیدگاهی نوشته نشده است.