تک دیک

واژه نامه و مجله آموزشی کامپیوتر و فناوری

دستور GOTO

دستور GOTO چیست؟

GOTO (به معنای “برو به …”) عنوان دستوری است که در بسیاری از زبان‌های برنامه‌نویسی به منظور انتقال کنترل به خط دیگری از کد مورد استفاده قرار می‌گیرد. مکان‌هایی که با استفاده از این دستور به آن‌ها پرش می‌شود معمولا توسط برچسب (Label) ها یا شماره خطوط مشخص می‌شود. بسته به زبان‌های برنامه‌نویسی مختلف، این دستور به اشکال گوناگونی از جمله GoTo، goto و … مشاهده می‌شود.

دستور GOTO از جمله دستورات جهش یا انشعاب غیر شرطی به شمار می‌رود. با وجود اینکه در گذشته استفاده از این دستور متداول بوده است اما با ظهور برنامه‌نویسی ساخت یافته (Structured Programming)، این دستور آرام آرام به فراموشی سپرده شده است. به عبارت دیگر در زبان‌های امروزی، استفاده از این دستور برای ایجاد برنامه‌ها ضرورتی ندارد و می‌توان از طریق حلقه‌ها، دستورات انتخاب و … نیز به همان عملکرد دستور GOTO دست پیدا نمود.

ساختار کلی این دستور به شکل goto identifier می‌باشد که در آن منظور از identifier برچسب، لیبل یا شماره خطی است که به آن نقطه قرار است پرش صورت بگیرد. (این برچسب در واقع دنباله‌ای از کاراکترهاست که در بسیاری از زبان‌ها با علامت : به پایان می‌رسد و یک نقطه معین در سورس کد را مشخص می‌کند). در قطعه کد زیر که به زبان C++ نوشته شده است نحوه استفاده از این دستور نمایش داده شده است:

...
label:
...
goto label;
...

مزایا و معایب استفاده از دستور GOTO

مهم‌ترین انتقادی که نسبت به این دستور بیان می‌شود آنست که استفاده از GOTO در مقایسه با ساختارهای جایگزین باعث می‌شود درک و فهم کد دشوارتر شود. هرچند این انتقاد در بسیاری از موارد قابل قبول است با اینحال از نظر بسیاری از کارشناسان، این دستور می‌تواند در صورت استفاده صحیح مفید واقع شود و نه تنها منجربه پیچیده‌تر شدن کد نشود بلکه خوانایی کد را بهبوده داده، از حجم کد کاسته و مانع از تکرار بخش عظیمی از دستورات شود. به علاوه در برخی از زبان‌ها از جمله C که امکان شکست (Break) چندسطحی وجود ندارد می‌تواند به عنوان راه حلی مناسب و سریع مورد استفاده قرار گیرد. به همین دلیل این دستور در بسیاری از زبان‌های برنامه نویسی پشتیبانی می‌شود و در بسیاری دیگر نیز پشتیبانی نمی‌شود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

امیرحسین شهسواری

عاشق دنیای رایانه و فناوری به خصوص برنامه نویسی هستم؛ یادگرفتن و البته یاد دادن چیزای جالبی که یاد گرفتم باعث خوشحالیم میشه و از اولویت‌های اصلی زندگیم به حساب میاد. از مدیریت و نوشتن در تک دیک هم واقعا لذت می‌برم :)

0 thoughts on “دستور GOTO

  • علی جمشیدی

    با سلام، امیدوارم حالتان خوب باشد
    برنامه نویسی واقعا لذت خاصی داره امیدوارم موفق باشید.

    پاسخ دادن

دیدگاهتان را بنویسید

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