بایگانی برچسب: s

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

آموزش برنامه نویسی ++C – ساختمان ( struct ) – قسمت دوم

تابع sizeof

تابع sizeof: تابعی است برای بدست آوردن size یک متغیر یا size یک نوع متغیر بر اساس byte.
مثال:
بدست آوردن size نوع متغیر int:

در خروجی ۴ چاپ می شود و نشان می دهد که اندازه ی یک متغیر از نوع int برابر با ۴ بایت یعنی ۳۲ بیت است.
می توانیم به جای گذاشتن نوع یک متغیر در آراگومان تابع sizeof نام متغیر هم گذاشت:

خروجی برابر با ۴ خواهد بود.

حالا می خواهیم یک آرایه از نوع structی که خودمان ایجاد کرده ایم بسازیم و size آنرا محاسبه کنیم.

تابع sizeof برای محاسبه ی struct

اطلاعات در مورد size انواع متغیر

توضیحات: قبل از اجرای برنامه می خواهیم خودمان size آرایه ی جدید را محاسبه کنیم.
در struct با نام f1 یک آرایه ی ۱۰تایی از کاراکتر داریم و اگر دقت کنید متوجه می شوید که هر کاراکتر ۱ byte است
یعنی:

۱*۱۰=۱۰byte

در ادامه یک آرایه ی ۵تایی از نوع int داریم که size نوع int هم برابر با ۴بایت است و چون ما یک آرایه ی ۵تایی از این نوع داریم پس درواقع پنج متغیر از این نوع داریم
یعنی:

۴*۵=۲۰byte

بعلاوه ی ۱۰ تای اول:

۲۰+۱۰=۳۰byte

در ادامه یک متغیر از نوع double داریم و اندازه ی double برابر با ۸بایت است
یعنی:

۸*۱=۸byte

۳۰+۸=۳۸byte

در اینجا متغیر های ما در struct تعریفی ما به اتمام می رسد یعنی اندازه ی یک متغیر از نوع struct تعریفی ما به نام f1 برابر با ۳۸بایت است و چون ما یک آرایه ی ۱۰تایی از این نوع متغیر ایجاد کرده ایم
پس:

۳۸*۱۰=۳۸۰byte

struct_part2