یک برنامهٔ سادهٔ C++ بنویسید که هنگام اجرای برنامه نام فایل پیکربندی را از آرگومان خط فرمان دریافت کند، اگر آرگومان موجود نبود یا فایل را نمیتوان باز کرد پیغام خطا را با std::cerr چاپ کند و در غیر این صورت پیام موفقیت را به خروجی استاندارد چاپ کند.
1.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:31 0.0
برای حل این مسأله از تابع main با پارامترهای argc و argv استفاده کنید؛ ابتدا بررسی کنید argc حداقل 2 باشد و در صورت نبود آرگومان از std::cerr پیغام خطا چاپ کرده و با کد خروجی غیر صفر خارج شوید. سپس با استفاده از (در کنار ) فایل را باز کنید و اگر باز نشد دوباره با std::cerr خطا بدهید، و اگر باز شد با std::cout پیام موفقیت چاپ کنید؛ نکتهها: از هدر برای std::cerr و std::cout استفاده کنید، کد خروجی مناسب بازگردانید و برای کامپایل از g++ استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکتهٔ کلیدی این مسئله، بررسی صحیح argc قبل از استفاده از argv است تا از دسترسی خارج از محدوده جلوگیری شود. برای بهتر شدن کار، نام فایل را بهعنوان std::string از argv[1] بخوانید و با std::ifstream فایل را باز کنید تا خطای بازکردن را بهصورت دقیق گزارش کنید. در صورت موفقیت، با std::cout پیام موفقیت چاپ کنید و در غیر موفقیت با std::cerr پیام خطا بدهید و مقدار بازگشتی غیرصفر برگردانید. همچنین از EXIT_FAILURE یا مقدار 1 برای بازگرداندن خطا استفاده کنید و کدی سازگار با g++ بنویسید.
گزارش