mani_kalantar
24-11-2008, 15:43
سلام دوستان.
من یک برنامه نوشتم که قراره با حلقه foreach و یک تابع بازگشتی تمام فایلها و دایرکتوری های یک درایو را نشان بده.ولی موقع کامپایل متوجه شدم کامپایلر یک شرط if رو نادیده میگیره.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در خط if(retdi==ll2) اگر retdi و ll2 با هم مساوی باشند باید بازگشت انجام شود ولی شرط نادیده گرفته میشه و یک حلقه بی نهایت ایجاد میشه و error میده.
اگر کسی هم میتونه این مساله رو با foreach یک جور دیگه حل کنه لطفا راهنماییم کنه
توضیح این که در بازگشتی باید به یک نقطه بازگشت برسی تا تابع بازگشت کنه.اگر نه یک حلقه تو در توی "خود فراخوان" رو ادامه بده.من نمیدونم اون نقطه بازگشت رو باید کجا بگیرم.
باز هم از همگی تشکر میکنم.
من یک برنامه نوشتم که قراره با حلقه foreach و یک تابع بازگشتی تمام فایلها و دایرکتوری های یک درایو را نشان بده.ولی موقع کامپایل متوجه شدم کامپایلر یک شرط if رو نادیده میگیره.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
در خط if(retdi==ll2) اگر retdi و ll2 با هم مساوی باشند باید بازگشت انجام شود ولی شرط نادیده گرفته میشه و یک حلقه بی نهایت ایجاد میشه و error میده.
اگر کسی هم میتونه این مساله رو با foreach یک جور دیگه حل کنه لطفا راهنماییم کنه
توضیح این که در بازگشتی باید به یک نقطه بازگشت برسی تا تابع بازگشت کنه.اگر نه یک حلقه تو در توی "خود فراخوان" رو ادامه بده.من نمیدونم اون نقطه بازگشت رو باید کجا بگیرم.
باز هم از همگی تشکر میکنم.