ebook archive
Login Form
آمار کلی
بازدیدکنندگان : 1494714Who's Online
ما 47 مهمان آنلاین داریمآخرين ارسالهاي تالار
-
- مقایسه چند برنامه در متلب
- 19 دقيقه پيش
-
- حرکت یک شی بر روی یک منحنی
- 2 ساعت, 45 دقيقه پيش
-
- چگونگی ساخت فایل exe در متلب
- 13 ساعت, 14 دقيقه پيش
-
- دستور مطلب
- 14 ساعت, 10 دقيقه پيش
-
- سوال: حاصل معادله Ax2+Bx+C با استفاده از متلب
- 14 ساعت, 12 دقيقه پيش
| متغیرهای global |
|
|
|
| نوشته شده توسط admin |
| یکشنبه, 27 شهریور 1390 ساعت 18:17 |
|
فرض نمائید که m فایلی به نام test.m به دستورات زیر وجود دارد:
k=f(3); در این برنامه از تابع f استفاده شده است. فرض کنید که تابع f نیز به صورت زیر تعریف شده باشد:
y=t+x; با اجرای برنامه test هنگامیکه متلب می خواهد تابع f را محاسبه نماید وارد این تابع می شود. در تابع f هنگامیکه متغیر y در حال محاسبه شدن می باشد، متلب به متغیر x خطا داده و برنامه متوقف خواهد شد. علت این خطا است که متغیرهای درون function اصطلاحا local یا محلی می باشند و حوزه فعالیت آنها تنها در خود function می باشد و متغیرهای درون function هیچ ارتباطی با برنامه های دیگر ندارند. با اینکه با اجرای برنامه test، متغیر x در workspace ایجاد شده است اما function، نمی تواند از x استفاده کند چرا که متغیرهای درون function محلی می باشند و function در حالت عادی نمی تواند به متغیرهای برنامه اصلی دسترسی داشته باشد.
global x x=2; k=f(3); disp(k)
function y=f(t) global x y=t+x; اگر بخواهید x ای که در function استفاده می شود همان x برنامه اصلی در test.m باشد باید این متغیر را در هر دو برنامه، اصطلاحاً global یا عمومی نمائید. به این نکته توجه کنید که دستور global باید در هر دو برنامه نوشته شود. پس برنامه test.m به صورت زیر اصلاح می گردد: در نتیجه به کمک دستور global ، حوزه فعالیت متغیرهای برنامه اصلی، تا داخل function ها و یا m فایل های دیگر گسترش می یابد. منبع: ال مو یا
نظر ها (4)
Powered by !JoomlaComment 4.0 beta2
|
| آخرین بروز رسانی در یکشنبه, 27 شهریور 1390 ساعت 18:25 |






