با استفاده از تابع tmpfile از stdio.h برنامهای بنویسید که یک فایل موقت بسازد، یک رشته را در آن بنویسد، اشارهگر فایل را به ابتدا برگرداند و سپس محتوای فایل را بخواند و روی صفحه چاپ کند.
5.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:13 0.0
برای حل این مسئله از تابع tmpfile() در استفاده کنید؛ ابتدا بررسی کنید که مقدار بازگشتی NULL نباشد تا از خطا مطمئن شوید، سپس با fwrite یا fputs داده را بنویسید، با rewind یا fseek(fp,0,SEEK_SET) اشارهگر را به ابتدای فایل ببرید و با fread یا fgets محتوا را بخوانید و چاپ کنید. در پایان فایل را با fclose ببندید (فایلهای ایجادشده با tmpfile پس از بسته شدن بهطور خودکار حذف میشوند)؛ نکات مفید شامل چک کردن تعداد بایتهای خوانده/نوشته و مدیریت رشتههای خاتمهیافته با '\0' است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
توضیح کوتاه: تابع tmpfile() فایلی موقت بدون نام در حالت خواندن/نوشتن باز میکند و بهطور خودکار پس از fclose حذف میشود. برای نوشتن داده از fwrite یا fputs استفاده کنید و مقدار بازگشتی را بررسی کنید تا از صحت نوشتن مطمئن شوید. سپس با rewind یا fseek(fp, 0, SEEK_SET) اشارهگر را به ابتدای فایل برگردانید و با fread یا fgets محتوا را بخوانید و چاپ کنید. در پایان مقدارهای خواندن/نوشتن را بررسی کنید و رشته را با '\0' خاتمه دهید تا از مشکلات حافظه جلوگیری شود.
گزارش