زبان برنامه نویسی سی/دستور continue: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
جزبدون خلاصۀ ویرایش |
جزبدون خلاصۀ ویرایش |
||
خط ۵:
دستور '''continue''' که با یک سمی کالُن « ; » ( نقطه ویرگول ) پایان مییابد و تنها به صورت « ;continue » نوشته میشود که به پارسی میشود « ادامه بده » در زبان C این معنا و کاربرد را دارد که اجرای حلقه را یک بار از قلم میاندازد و اجرای حلقه را ادامه میدهد . بنابراین دستور continue فقط داخل حلقهها قابل استفاده است و البته فقط داخل حلقه خود عمل میکند ؛ یعنی اگر ۳ حلقه تو در تو تعریف کنید و در سومین حلقه که داخلیترین حلقه میباشد از دستور continue استفاده کنید فقط بر روی همان حلقه ، یعنی حلقه سوم و داخلیترین حلقه ، عمل میکند
در حلقههای while و do while دستور continue از جایی که نوشته شده تا انتهای حلقه را نادیده میگیرد شرط while را ( جه در حلقه while و چه در حلقه do while ) بررسی میکند که اگر همچنان شرط حلقه برقرار بود ، اجرا و تکرار حلقه را ادامه میدهد و اگر نه ، حلقه شکسته میشود
دقت کنید که شما میتوانید با دستورهای if ( دستور if و else if و else ) دستور continue را شرطی کنید تا در صورتی که شرط یا شرطهایی برقرار بودند حلقه نادیده گرفته شود و ادامه کدهایی که داخل حلقه نوشته شدهاند از قلم بیافتند و حلقه ادامه پیدا کند که این متداولترین روش استفاده از دستور continue میباشد . بنابراین به جای استفاده از دستور break ( که حلقه را میشکند ) و ایجاد حلقههای دیگر برای نوشتن برنامه خود میتوانیم در زبان C و خانواده آن و بسیاری از زبانهایی که از C الگو گرفتهاند داخل حلقه خود با دستور continue در صورتی که شرط یا شرطهایی برقرار بودند از اجرای حلقه جلوگیری کنیم و حلقه از جایی که continue را نوشتهایم تا انتهای حلقه را نادیده بگیرد . پس در واقع ، ما با دستور continue استثناء یا استثناءهایی را برای حلقه خود ایجاد میکنیم
خط ۳۱:
{{پایان چپچین}}
در مثال بالا اعداد فرد ، اسثناء شدهاند تا در خروجی خطدستوری چاپ نشوند . در فایل برنامه خود ابتدا با دستور مستقیم include فایل سرآیند stdio را ضمیمه برنامه نمودهایم . تابع اصلی برنامه را یعنی main که کنترل تمام برنامه را بر عهده دارد را نوشتهایم ( که البته تنها تابع برنامه ماست ) و داخل تابع main یک متغیر از نوع صحیح با مقدار 0 تعریف کردهایم ( که البته محلی است اما در تمام تابع قابل دسترسی میباشد ) یک حلقه for ایجاد کردهایم که از 0 تا 10 میشمارد و بدنه خود را اجرا و تکرار میکند اما داخل حلقه با دستور شرطی if نوشتهایم اگر باقیمانده تقسیم عدد ذخیرهشده در i بر 2 مساوی با 0 نبود ( که یعنی یک عدد فرد است ) بقیه حلقه نادیده گرفته شود و در غیر این صورت در خروجی خطدستوری مقدار متغیر i چاپ شود و خط شکسته شود که از 0 شروع کردهایم و چون تقسیم بر 2 باقیماندهای ندارد حلقه اجرا میشود و
مثال :
|