دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۵
  • اسفند

جلسه ۲۰ : ورودی / خروجی ها در زبان C

  • دسته‌بندی‌ها :
جلسه ۲۰ : ورودی / خروجی ها در زبان C
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      با سلام خدمت تمامی دوستان عزیز سایت پی وی لرن .و کاربرانی که دوره کامل آموزش زبان C را دنبال می کنند. و کاربرانی که با سری آموزش های زبان C همراهمون هستند. جلسه قبل typedef در زبان C و  تفاوت typedef با #define بیان شد. در این جلسه قصد داریم ورودی / خروجی ها در زبان C ، فایل های استاندارد در C و توابع را مورد بحث قرار دهیم.پس بدون معطلی میریم سر وقت اولین مبحث یعنی ورودی / خروجی ها در زبان C.

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

      اول از همه تعریف ورودی / خروجی ها در زبان C ،هنگامی که ما می گویند ورودی، به این معنی است که برخی از داده ها را به برنامه منتقل کنیم.

      ورودی می تواند به صورت یک فایل یا خط فرمان به برنامه انتقال داده شود.

      برنامه نویسی C مجموعه ای از توابع پیش ساخته ای را برای مدیریت ورودی ها فراهم می کند.

      همچنین آن را به در صورت نیاز به برنامه می دهد.

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

      برنامه نویسی C مجموعه ای از توابع پیش ساخته ای را برای خروجی داده ها روی صفحه کامپیوتر فراهم می کند.

      همچنین در فایل های متن یا فایل های binary آن را ذخیره می کند.

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

      برنامه نویسی C تمام دستگاه ها را به عنوان فایل ها بررسی می کند.

      بنابراین دستگاه هایی مانند صفحه نمایش به عنوان فایل های استاندارد در C در نظر گرفته می شوند.

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

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

      فایل استاندارداشاره گر فایلدستگاه
      Standard inputstdinKeyboard
      Standard outputstdoutScreen
      Standard errorstderrYour screen
      اشاره گرهای فایل ابزاری برای دسترسی به فایل های استاندارد در C برای خواندن و نوشتن هستند.
      این بخش نحوه خواندن مقادیر روی صفحه و نحوه چاپ نتیجه روی صفحه را توضیح می دهد.

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

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

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

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

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

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

      نکته: اگرچه استفاده از تابع ()get قدیمی تر شده است، به جای استفاده از آن می توانید از ()fgets  استفاده کنید.
      مثال : 

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

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

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

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

      فرمتی که به عنوان پارامتر هر دو تابع مشخص شده است،می تواند یک رشته ثابت ساده باشد.

      اما شما می توانید٪ s،٪ d،٪ c،٪ f و غیره را برای چاپ یا خواندن رشته ها، عدد صحیح، کاراکتر یا عدد اعشاری به ترتیب مشخص کنید.

      بسیاری از گزینه های قالب بندی دیگر وجود دارد که می تواند بر اساس الزامات مورد استفاده قرار گیرد.

      اکنون با یک مثال ساده برای درک بهتر می پردازیم.

      مثال : 

      هنگامی که کد بالا کامپایل شده و اجرا می شود، منتظر می ماند تا بعضی از متن ها را وارد کنید.

      هنگامی که یک متن را وارد کنید و دکمه enter را فشار دهید، برنامه ادامه می یابد و ورودی را خوانده و آن را به صورت زیر نمایش می دهد .

      مثال : 

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

      کلام پایانی

      خب اینم از ورودی / خروجی ها در زبان C و فایل های استاندارد در C .امیدوارم لذت برده باشین.

      جلسه بعد را با File I/O در زبان C ادامه خواهیم داد. همراهمون باشید.

      QR:  جلسه ۲۰ : ورودی / خروجی ها در زبان C
      به اشتراک بگذارید


      دیدگاه کاربران
      1. تصویر کاربر