یک برنامهٔ C بنویسید که نام فایل را از ورودی دریافت کند، اندازهٔ فایل را با استفاده از fseek و ftell تعیین کند و سپس ۱۰۰ بایت اول فایل را بخواند و موقعیت جاری فایل (offset) را با ftell نمایش دهد.

8.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:49

0.0

برای حل، از stdio.h استفاده کنید: با fopen فایل را باز کنید، با fseek(file, 0, SEEK_END) به انتها بروید و با ftell اندازهٔ فایل را بگیرید، سپس با rewind یا fseek به ابتدای فایل بازگردید و با fread صد بایت بخوانید و دوباره با ftell موقعیت جاری را نمایش دهید. خطاها را (مثل باز نشدن فایل یا خواندن کمتر از ۱۰۰ بایت) بررسی کنید و در پایان فایل را ببندید. این تمرین برای آشنایی با توابع فایلی stdio و مفاهیم offset در برنامه‌نویسی سیستم است.

توسط پژوهشگر در 202 روز قبل ساعت 02:49
دسته بندی ها: C for beginner
reyhaneh در 202 روز قبل ساعت 08:21

نکتهٔ مفید: برای خواندن دقیق بایت‌ها بهتر است فایل را به صورت باینری باز کنید (rb) تا تأثیر تبدیل‌های متن حذف شود. هنگام استفاده از ftell و fseek، حتماً خطاها را بررسی کنید و برای بازگشت به ابتدای فایل از rewind یا fseek با موقعیت ۰ استفاده کنید. اگر اندازهٔ فایل کمتر از ۱۰۰ بایت بود، هیچ اشکالی ندارد، فقط به همان مقدار بخوانید و موقعیت را با ftell دوباره گزارش کنید. در پایان با fclose فایل را ببندید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری