حوزه‌ی دید متغیرها در آردوینو

blog
۱۳۹۶-۰۴-۰۹
1 دقیقه

متغیرها در زبان C که آردوینو از آن استفاده می‌کند، ویژگی‌‌ای به نام حوزه دید (scope) دارند. اولین نسخه‌های زبان‌ها مثل BASIC، این ویژگی را نداشتند و همه‌ی متغیرها  global بودند.

متغیرهای global (سراسری)، در همه‌ی توابع قابل‌مشاهده و معتبر هستند. در آردوینو هر متغیری که خارج از یک تابع (مانند ()setup()، loop و …) تعریف شود، یک متغیر global خواهد بود. متغیرهای local (محلی) تنها در تابعی که تعریف شده‌اند قابل‌مشاهده هستند.

وقتی‌که برنامه شروع به گسترش و به‌تبع آن پیچیدگی می‌کند، متغیرهای local راه خوبی برای کسب این اطمینان هستند که تنها یک تابع به متغیرهای خودش دسترسی دارد. اگر یک تابع به‌صورت غیرعمدی متغیرهای یک تابع دیگر را تغییر دهد، خطا (ارور) رخ می‌دهد. اما استفاده از این نوع متغیر از این خطاهای برنامه‌نویسی جلوگیری خواهد کرد.

هم‌چنین تعریف و مقداردهی اولیه متغیر درون حلقه‌‌ی فور گاهی اوقات مفید است. این نوع متغیرها فقط درون براکت‌های حلقه‌ی فور قابل دستیابی هستند.

مثال:

 

منبع

اطلاعات
2
0
لینک و اشتراک
profile

Yalda

متخصص الکترونیک

علاقه‌مند به یادگیری چیزهای جدید!

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند. فروش در پالت
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد. جستجو در آیسی
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند.
family

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. وقتی شما در این سامانه، قطعه الکترونیکی را جستجو می‌کنید؛ آی سی به سرعت نتایج جستجوی شما در اکثر فروشگاه‌های آنلاین در حوزه قطعات الکترونیک را نمایش می‌دهد.
family

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

دیدگاه ها

profile
Ali گفت :
۱۳۹۶-۱۰-۲۰ ۰۰:۱۳

سلام ببخشید آیا تعریف متغیر های لوکال حجم کمتری از برنامه رو مصرف میکنه؟

profile
زئوس Zeus گفت :
۱۳۹۶-۱۲-۲۴ ۱۲:۵۰

نه لذوما ولی بی تاثیر هم نیست
تفاوت متغییر لوکال با گلوبال (محلی یا سراسری) تنها در محل گرفتن حافظه است
به این معنی که متغییر های لوکال حافظه مورد نیاز را از قسمت استک برنامه بر میدارند و پس از تمام شدن روتین تابع حافظه اشعال شده آزاد می شود.
در صورتی که متغیر های گلوبال حافظه مورد نیاز را از حافظه کلی برنامه برداشت می کنند و تا مادامی که برنامه در حال اجرا است ، حافظه را آزاد نمی کنند.

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله