آموزش زبان ++C - مقدمه

آموزش برنامه نویسی ++union – C

union

union ها نوعی ساختمان مانند struct ها هستند.
ساختار کلی: مانند struct تعریف می شود.

ویژگی ها:
۱- معمولا برای صرفه جویی در استفاده از حافظه ی RAM استفاده می شوند
۲- اندازه ی یک نوع union برابر با بزرگترین فیلد آنها است.
مثال در مورد اندازه ی یک نوع union:

union

توضیحات: اگر برنامه را اجرا بگیرید برنامه عدد ۸ را نمایش می دهد. برای بدست آوردن سایز یک نوع متغیر از تابع sizeof استفاده می کنیم. در برنامه ای که نوشتیم ما یک یونیون با نام un ایجاد کردیم که فیلد های آن عبارت اند از:

int a;

با اندازه ی ۲بایت

float b;

با اندازه ی ۲بایت

double d;

با اندازه ی ۸بایت
پس نتیجه میگیریم که اندازه ی یک یونیون برابر است با اندازه ی بزرگترین فیلد ایجاد شده ی آن.
۳- مقدار دهی به یک فیلد یونیون مانند مقدار دهی به یک فیلد struct است.
مثال:

۴- در استفاده از یونیون ها فقط می توان از یک فیلد آن استفاده کرد و ایجاست که متوجه صرفه جویی در مصرف حافظه با یونیون ها می شوید.
مثال: از یونیون قبلی که ایجاد کرده بودیم استفاده می کنیم

خروجی:
union_p1

توضیحات: با اجرای این برنامه متوجه می شوید که فقط می توان از یک فیلد یونیون استفاده کرد چون وقتی به فیلد یونیون مقدار دهید و سپس به یک فیلد دیگر مقدار دهید مقدار قبلی در فیلد قبلی ازبین می رود.
کاری که در برنامه بالا انجام دادیم این بود که ابتدا یک یونیون ایجاد کردیم سپس یک متغیر از آن نوع ایجاد کردیم سپس مقدار نوع int آنرا برابر با ۲۰ قرار دادیم سپس یک cout از آن گرفتیم سپس مقدار یک فیلد دیگر آن یونیون یک از نوع float بود را برابر با ۲٫۵ قرار دادیم و این بار از هر دونوع آنها یک cout گرفتیم و در اینجا است که متوجه می شویم فقط می توان از یک نوع فیلد آن استفاده کرد.

پاسخ دهید

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