سلام
فرق کامپایل و دیباگ دقیقا چیه؟
من با dev C++ کار میکنم و وقتی کامپایل میکنم خطا ها رو بهم میگه اصلا چه نیازی به دیباگ هست؟
سلام
فرق کامپایل و دیباگ دقیقا چیه؟
من با dev C++ کار میکنم و وقتی کامپایل میکنم خطا ها رو بهم میگه اصلا چه نیازی به دیباگ هست؟
یکسری خطا ها مربوط به عدم رعایت نحو (Syntax) زبان هستند، مثلا اینکه اسم متغیری رو اشتباه نوشته باشید و چون با اون نام پیداش نمی کنه کامپایلر موقع ترجمه کد برنامه نویسی به زبان ماشین پردازنده اشکال رو در مرحله کامپایل پیدا می کنه و خطا میده که فرضا فلان موردی که نوشته اید تعریف نشده.
طبعا شناسایی اینجور خطا ها برای کامپایلر راحته چون قواعد نحوی زبان رو میدونه و هر موردی که با این قواعد جور در نیاد شناسایی میشه.
اما همه خطا ها در موقع کامپایل کد شناسایی نمیشن، چون مربوط به اشتباه در منطق کد هستند، نه عدم رعایت قواعد نحوی.
مثلا مقدار متغیری رو تقسیم بر مقدار متغیر دیگری می کنید که مقدارش صفر ئه. تقسیم بر صفر منجر به بروز خطا در زمان اجرا میشه، اما در مرحله کامپایل تقسیم مقدار یک متغیر بر متغیر دیگری مشکلی از نظر قواعد نحوی زبان نداره که خطایی دریافت کنید.
برای بررسی و تحلیل برنامه ای که در اجرا یک ایرادی ریزی داره، Debug اش می کنند. مرحله به مرحله اجرای یک روال و تغییر مقدار داده ها رو بررسی می کنند تا ببینند کجای کار مشکل داره.
ممنون برای پاسخ کاملتون