با زبان C و با استفاده از هدر sys/ioctl.h برنامه‌ای بنویسید که اندازهٔ پنجرهٔ ترمینال (تعداد سطر و ستون) را با استفاده از ioctl خوانده و نمایش دهد.

10.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:33

0.0

برای حل این مسئله از ساختار struct winsize و فراخوان ioctl با فرمان TIOCGWINSZ استفاده کنید؛ هدرهای مورد نیاز ، و را اضافه کنید و برای پارامتر فایل دسکریپتور می‌توانید STDOUT_FILENO یا STDIN_FILENO را استفاده کنید. نتیجه را در اعضای ws_row و ws_col ساختار winsize بخوانید، مقدار بازگشتی ioctl را بررسی کرده و در صورت خطا پیام مناسب چاپ کنید؛ برنامه را در یک ترمینال واقعی اجرا کنید چون این فراخوان وابسته به ترمینال است.

توسط پژوهشگر در 201 روز قبل ساعت 03:33
دسته بندی ها: C for beginner
arman در 201 روز قبل ساعت 06:03

این روش با استفاده از ساختار struct winsize و فراخوانی ioctl با فرمان TIOCGWINSZ اندازهٔ پنجرهٔ ترمینال را می‌خواند و مقدار را در ws_row و ws_col قرار می‌دهد. هدرهای sys/ioctl.h و unistd.h را اضافه کنید و می‌توانید از STDOUT_FILENO یا STDIN_FILENO برای فایل دسکریپتور استفاده کنید. مقدار بازگشتی ioctl را بررسی کنید و در صورت خطا با perror یا پیام مناسب نشان دهید. اجرای این برنامه در ترمینال واقعی لازم است چون این فراخوان به ترمینال وابسته است.

گزارش

1 پاسخ

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

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