تالار گفتمان مانشت

نسخه‌ی کامل: کشف خطای مقدار اولیه نداشتن در زبان های C و پاسکال
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان این سوال هم برای کنکور 84 هست و کلید گزینه "الف" هست. میشه دلیلش رو بگین ممنونم

[تصویر:  233955_03802290892055417847.png]
(11 دى 1392 03:17 ب.ظ)hosshah نوشته شده توسط: [ -> ]سلام دوستان این سوال هم برای کنکور ۸۴ هست و کلید گزینه "الف" هست. میشه دلیلش رو بگین ممنونم

[تصویر:  233955_03802290892055417847.png]

چون تو c نمیشه توابع تو در تو استفاده کرد واسه همین فقط محیط خودش و محیط سراسری رو بررسی می کنه ولی پاسکال تو در تو بررسی داره خب معلوم هزینش هم بیشتر میشه و هزینه c کمتر میشه. امیدوارم مفهوم رو رسونده باشم.
(15 دى 1392 09:52 ب.ظ)mostafa2013 نوشته شده توسط: [ -> ]چون تو c نمیشه توابع تو در تو استفاده کرد واسه همین فقط محیط خودش و محیط سراسری رو بررسی می کنه ولی پاسکال تو در تو بررسی داره خب معلوم هزینش هم بیشتر میشه و هزینه c کمتر میشه. امیدوارم مفهوم رو رسونده باشم.
با تشکر از پاسختون میخوام ببینم درست متوجه شدم یا نه
یعنی میخواین بگین چون ممکنه یک تابع در زبان پاسکال عمقی بیشتر از یک هم داشته باشه و برای اینکه ببینیم متغیر مقدار اولیه داشته یا نه باید تابع های پدرشو (منظورم تابع هایی هستن که این تابع توشون هست) چک کنیم؟
ولی خب C فقط تابع با عمق صفر میتونه داشته باشه و فقط کافیه همون تابع بررسی بشه (به جز متغیرهای سراسری) پس تعداد محل هایی که باید بررسی کنیم کمتره؟

حالا اگه محیط تعریف رو پویا فرض کنیم این تعداد بررسی ها توی هر دو زبان فکر میکنم یکسان بشه چون به صورت عمقی بررسی میشه، اشتباه فکر میکنم؟
لینک مرجع