sajadzare
شنبه 25 آبان 1392, 21:40 عصر
سلام
من یه حلقه دارم که اونو در بدنه try - catch گذاشتم تا اگه خطایی رخ داد برنامه هنگ نکنه و خطا رو نشون بده. حالا من میخوام هر خطایی توی عملیات بدنه حلقه رخ داد بره و حلقه رو مجددا از صفر شروع کنه البته این بار تعدادی که از i انجام شده رو از مقدار انتهایی حلقه کم کنه و بعد شروع کنه. من قبل از شروع حلقه نوشتم
loop:
for(i=0;i<j;j++)
حالا توی بدنه catch اومدم و نوشتم
goto loop;
اما ارور میده و میگه loop توی اسکوپ نیست.!
حتی من وقتی میخوام توی بدنه catch مقدار j رو تغییر بدم هم نمی شناسه
راهکار شما برای اینکه بتونم در صورت بروز خطا عملیات حلقه مجددا شروع بشه چیه . میدونم از continue برای این کار میشه بهره برد ولی در مورد خطاهای ناخواسته و پیش بینی نشده نمیشه شرط گذاشت که اگه این طور شد ادامه بده !!!
من یه حلقه دارم که اونو در بدنه try - catch گذاشتم تا اگه خطایی رخ داد برنامه هنگ نکنه و خطا رو نشون بده. حالا من میخوام هر خطایی توی عملیات بدنه حلقه رخ داد بره و حلقه رو مجددا از صفر شروع کنه البته این بار تعدادی که از i انجام شده رو از مقدار انتهایی حلقه کم کنه و بعد شروع کنه. من قبل از شروع حلقه نوشتم
loop:
for(i=0;i<j;j++)
حالا توی بدنه catch اومدم و نوشتم
goto loop;
اما ارور میده و میگه loop توی اسکوپ نیست.!
حتی من وقتی میخوام توی بدنه catch مقدار j رو تغییر بدم هم نمی شناسه
راهکار شما برای اینکه بتونم در صورت بروز خطا عملیات حلقه مجددا شروع بشه چیه . میدونم از continue برای این کار میشه بهره برد ولی در مورد خطاهای ناخواسته و پیش بینی نشده نمیشه شرط گذاشت که اگه این طور شد ادامه بده !!!