زبان برنامه نویسی سی/دستور goto: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
صفحه‌ای تازه حاوی «==دستور بروبه goto== دستور « برو به ... » که به انگلیسی می‌شود « ... go to » و با کلیدو...» ایجاد کرد
 
جزبدون خلاصۀ ویرایش
خط ۱:
{{سرص|زبان برنامه نویسی سی/حلقه do while و while|زبان برنامه نویسی سی/دستور continue}}
 
==دستور بروبه goto==
 
سطر ۲۳ ⟵ ۲۵:
کاربرد goto عموماً برای خروج از حلقه می‌باشد ؛ مثلاً حلقه در جال اجرا و تکرار است که اگر شرطی برقرار شد ، برنامه از حلقه خارج شود و به بیرون از حلقه و ادامه برنامه برود . از goto برای ایجاد یک حلقه نیز استفاده می‌شود . مثلاً یک برچسب را می‌نویسید و سپس شرطی را می‌نویسید ؛ که متغیر شرط در خط بعدی یا خطوط بعدی تغییر می‌کند و در انتهای آن از دستور goto برای ارجاع به برچسب استفاده می‌کنید که کامپایلر باز می‌گردد به خطوط قبلی و آنها را اجرا می‌کند و سپس دوباره به goto می‌رسد پس دوباره باز می‌گردد به خطوط و کدهای قبلی و آنها را اجرا می‌کند و این در حالیست که در هر بار اجرا متغیر شرط به برقرار نبودن نزدیک می‌شود تا جایی که در نهایت برقرار نیست و بنابراین goto نیز اجرا نمی‌شود و ادامه برنامه دنبال می‌شود . این روش مانند ساخت یک حلقه است '''اما به هیچ وجه توصیه نمی‌شود''' . شما می‌توانید از goto برای ایجاد اتصال میان بخش‌های مختلف کدها نیز استفاده کنید ؛ اما این نیز توصیه نمی‌شود چرا که برنامه شما را ناخوانا و پیچ در پیچ می‌کند ( حتی ممکن است خود شما نیز به اشتباه بیافتید که در نهایت برنامه خروجی ، نتیجه مطلوب را نخواهد داشت )
 
در مجموع سعی کنید به ندرت از goto استفاده کنید ، آن هم فقط برای خروج از حلقه در صورتی که نمی‌خواهید با break آن را بشکنید .دقت کنید که از goto تنها داخل بدنه تابع می‌توان استفاده نمود و به هر جای تابع که برچسبی داشته باشد ، دسترسی دارد و به آنجا می‌پرد ( jump ) یعنی از یک قسمت از برنامه که دارد اجرا می‌شود به قسمت دیگری از برنامه می‌رود ( که مسلماً به واسطه ;goto label-identifier اتفاق میافتد ) اما '''دقت کنید''' که goto نمی‌تواند از داخل یک تابع به داخل تابع دیگری برود ؛ یعنی هر برچسب ، محلی می‌باشد و داخل تابع خود معنا و امکان حضور می‌یابد
 
[[رده:زبان برنامه نویسی سی]]