خارج شدن از یک حلقه نامحدود در زبان برنامه نویسی C

وقتی که شروع به استفاده از حلقه ها در زبان برنامه نویسی C می کنید، لذت  برنامه نویسی را تجربه می کنید و همچنین ترس از حلقه های بی پایان و نامحدود. این حلقه ها تا ابد ادامه پیدا می کنند برای اینکه برنامه نویس آن فراموش کرده است که راه خروجی برای حلقه بگذارد یا هنوز برنامه با شرط خروجی روبرو نشده است. در هر دو صورت حلقه بی پایان یک مشکل است.

بعضی اوقات یک زبان برنامه نویسی C شامل یک حلقه نامحدود به عمد است. این نوع الگو شاید عجیب به نظر بیاید ولی مبنای بسیاری از برنامه های مدرن است که برای چیزی یا گرفتن ورودی خاصی انتظار می کشند. به یک حلقه از این دست حلقه ها نگاه کنید :

 

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

این سورس کد را روی دیسک ذخیره کنید و آنرا کامپایل و اجرا کنید :

 

 

خب حالا می توانید تایپ کنید و متن خود را روی صفحه نمایش ببینید. ولی چگونه آنرا متوقف کنید؟
برای متوقف کردن، باید که یک حلقه بی پایان را بشکنید. البته این کار را با فشردن Ctrl+C هم می توانید انجام دهید. ولی این شیوه ای نیست که شما دوست دارید برنامه کار کند. بجای آن، یک شرط خروجی می بایستی که برای حلقه تعریف شود. شرطی که حلقه را تمام کند.

برنامه نویسان زبان برنامه نویسی سی می دانند که یک حلقه می بایستی که بر اساس شرایطی که قابل پیشبینی نیست و در درون دستورات است نیز شکسته شوند. در نتیجه خردمندی آنها، آنها را به سمت کلیدواژه break هدایت می کند.

چیزی که break انجام می دهد این است که سریعا از یک حلقه خارج می شود (هر حلقه زبان  C و نه فقط حلقه for) وقتی کامپیوتر break را می بیند، فرض می کند که حلقه تمام شده است و آنرا  جوری می بیند که انگار به شرط خروج از حلقه رسیده است :

 

حالا یک شرط خروج نیز تعریف شده است. مقایسه if در این کد چک می کند که آیا کاراکتر ~ وارد شده است یا نه. اگر وارد شده باشد، حلقه توسط break تمام می شود. حالا این یکی سورس کد C را ذخیره، کامپایل و اجرا کنید. حالا در مقایسه با کد قبلی می توانید با فشردن کلید ~ برنامه را تمام کنید.

دن گوکین، دامیز



برای مشاهده لیست کامل درس های C و C++ سایت اینجا را کلیک کنید.


جدیدترین درس های C و C++ ما را از طریق پست الکترونیک دریافت کنید

آدرس email خود را در این کادر وارد کنید.

توسط FeedBurner

دیدگاه‌ خود را بنویسید

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