ورودی / خروجی در زبان C – آموزش زبان C

  • جمعه ۱۳ مهر ۱۳۹۷
  • بازدید ۶۱ نفر

c input output 4155 ورودی / خروجی در زبان C   آموزش زبان C

ورودی / خروجی در زبان C

منظور از ورودی این است که برخی از داده ها را به یک برنامه انتقال دهیم. ورودی می تواند از طریق یک فایل و یا خط فرمان به برنامه انتقال داده شود. زبان برنامه نویسی C توابع پیش ساخته ای را به منظور مدیریت ورودی ارائه می کند. و منظور از خروجی این است که برخی از داده ها را روی صفحه نمایش، چاپگر و یا فایل نمایش دهیم. زبان برنامه نویسی C توابع پیش ساخته ای را به منظور مدیریت خروجی ارائه می کند.

فایل های استاندارد

زبان برنامه نویسی C با همه دستگاه ها مانند فایل رفتار می کند. بنابراین دستگاه هایی مانند صفحه نمایش عنوان فایل در نظر گرفته می شود. هنگامی که یک برنامه C اجرا می شود، به طور خودکار سه فایل زیر برای دسترسی به کیبورد و صفحه نمایش، باز می شوند:

فایل استاندارداشاره گر فایلدستگاه
Standard inputstdinKeyboard
Standard outputstdoutScreen
Standard errorstderrYour screen

در این بخش شما نحوه گرفتن ورودی از صفحه نمایش و همچنین چاپ مقادیر بر روی صفحه نمایش را یاد خواهید گرفت.

توابع getchar() و putchar()

تابع int getchar(void) یک کاراکتر از صفحه نمایش می خواند و آن را به صورت integer باز میگرداند. هر بار که این تابع فراخوانی می شود، فقط می تواند یک کاراکتر را بخواند. اگر می خواهید بیش از یک کاراکتر را توسط این تابع بخوانید، می توانید آن را درون یک حلقه قرار دهید.

تابع int putchar(int c) یک کاراکتر می گیرد و آن را بر روی صفحه نمایش چاپ می کند و همان کاراکتر را به عنوان خروجی باز میگرداند. مانند تابع getchar این تابع هم هر بار که فراخوانی می شود، فقط می تواند یک کاراکتر را در صفحه نمایش چاپ کند. اگر می خواهید بیش از یک کاراکتر را توسط این تابع چاپ کنید، می توانید آن را درون یک حلقه قرار دهید.

به مثال زیر توجه کنید:

زمانی که کد بالا توسط کامپایلر زبان C اجرا می شود، برنامه منتظر می ماند تا کاربر متنی را وارد کند. هنگامی که کاربر کلید Enter را فشار می دهد، اجرای برنامه ادامه می یابد و تنها یک کاراکتر را خوانده و آن را به صورت زیر نمایش می دهد:

توابع gets() و puts()

تابع char *gets(char *s) یک خط از ورودی را تا زمانی که به کاراکتر خط جدید یا EOF نرسیده باشد، می خواند و آن را درون بافر s قرار می دهد.

تابع int puts(const char *s) رشته ورودی s را به همراه یک کاراکتر خط جدید بر روی صفحه نمایش چاپ می کند.

مثال زیر نحوه استفاده از این دو تابع را نشان می دهد:

زمانی که کد بالا کامپایل و اجرا می شود، برنامه منتظر می ماند تا کاربر متنی را وارد کند. هنگامی که کاربر کلید Enter را فشار دهد، اجرای برنامه ادامه می یابد و رشته خوانده شده را به صورت زیر نمایش می دهد:

توابع scanf() و printf()

تابع int scanf(const char *format, …) ورودی را از جریان ورودی استاندارد stdin می خواند و آن را بر اساس فرمت ارائه شده اسکن می کند.

تابع int printf(const char *format, …) خروجی را به جریان خروجی استاندارد stdout می نویسد و آن را مطابق فرمت ارائه شده، تولید می کند.

فرمتی که به عنوان پارامتر هر دو تابع مشخص شده است، می تواند یک رشته ثابت باشد (مثلا “hello world”)، اما شما می توانید از %d، %c، %f ، %s به منظور چاپ یا خواندن عدد، کاراکتر، عدد اعشاری و رشته استفاده کنید. به غیر از این چهار مورد که برای فرمت بندی استفاده می شوند، موارد دیگری نیز وجود دارند که در هنگام نیاز استفاده می شوند.

برای درک بهتر موضوع به مثال زیر توجه کنید:

زمانی که کد بالا کامپایل و اجرا می شود، برنامه منتظر می ماند تا کاربر متنی را وارد کند. هنگامی که کاربر کلید Enter را فشار دهد، اجرای برنامه ادامه می یابد و رشته خوانده شده را به صورت زیر نمایش می دهد:

 

توجه! داشته باشید که اگر برای %d که برای عدد صحیح استفاده می شود، یک رشته وارد کنید، ممکن است باعث بروز خطا شود.

نکته! تابع scanf() هنگامی که با کاراکتر فضای خالی مواجه می شود، خواندن از ورودی را خاتمه می دهد. برای نمونه this is test برای تابع scanf() سه رشته مجزا است و اگر با استفاده از این تابع بخواهید همچین رشته ای را بخوانید، این تابع فقط this را خواهد خواند.


باکس دانلود
شناسه:
۴۱۵۵
لینک دانلود:
روی دکمه G+1 برای محبوب کردن سایت کلیک کرده سپس از لینک زیر دانلود را انجام دهید
ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است