Latest web development tutorials

C ++ إخراج الإدخال الأساسي

توفر المكتبة القياسية C ++ مجموعة غنية من وظائف الإدخال / الإخراج، فإننا سوف يمكن وصفها في الفصول اللاحقة. ويناقش هذا الفصل البرمجة C ++، وأنا الأساسي والشائع / عمليات الإخراج.

يحدث C ++ I / O في تيار، تيار هو سلسلة من وحدات البايت. إذا كان تيار بايت تتدفق من الجهاز (مثل لوحة المفاتيح، محركات الأقراص، وشبكة اتصالات، وما إلى ذلك) الذاكرة، وهو ما يسمىعملية الإدخال.إذا كان تيار بايت تتدفق من أجهزة الذاكرة (مثل شاشات العرض والطابعات والأقراص، وشبكة اتصالات، وما إلى ذلك)،وهو ما يسمى عملية الانتاج.

أنا يا رأس الملفات / مكتبة

الملفات رأس التالية مهمة في البرمجة C ++.

头文件函数和描述
<iostream>该文件定义了cin、cout、cerrclog对象,分别对应于标准输入流、标准输出流、非缓冲标准错误流和缓冲标准错误流。
<iomanip>该文件通过所谓的参数化的流操纵器(比如setwsetprecision),来声明对执行标准化 I/O 有用的服务。
<fstream>该文件为用户控制的文件处理声明服务。我们将在文件和流的相关章节讨论它的细节。

تيار الإخراج القياسي (cout)

محدد مسبقاcout الكائن مثيل من فئة ostream.الكائن cout هو "متصل" إلى جهاز الإخراج القياسي، عادة ما يكون العرض. يستخدممحكمة << مشغل بالتزامن مع إدخال تيار على النحو التالي:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Hello C++";
 
   cout << "Value of str is : " << str << endl;
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

Value of str is : Hello C++

C ++ مترجم على أساس النوع من البيانات ليكون متغير الانتاج واختيار المشغل تيار الإدراج المناسب لعرض القيمة. << طاقتها مشغل لإخراج نوع المدمج في (صحيح، تطفو، مزدوجة، سلسلة، ومؤشر ل) البنود.

مشغل تيار الإدراج << يمكن استخدامها عدة مرات في بيان له، كما هو مبين فيالأمثلة المذكورة أعلاه،ENDL لنهاية السطر لإضافة خط فاصل.

تيار الإدخال القياسي (CIN)

كائنات محددة مسبقاCIN istreamهو مثيل للفئة. ويتبع الكائن CIN إلى جهاز الإدخال القياسية، عادة لوحة المفاتيح. استخراجCIN على مشغل تيار >> المستخدمة في الجمع، على النحو التالي:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char name[50];
 
   cout << "请输入您的名称: ";
   cin >> name;
   cout << "您的名称是: " << name << endl;
 
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، فإنه يطالب المستخدم بإدخال اسم. عندما يقوم المستخدم بإدخال قيمة ثم اضغط على مفتاح Enter، سترى النتائج التالية:

请输入您的名称: cplusplus
您的名称是: cplusplus

C ++ مترجم على أساس النوع من قيمة إدخال البيانات، حدد مشغل استخراج تيار المناسب لاستخراج قيمة، ويخزنها في متغير معين.

تيار المشغل استخراج >> يمكن استخدامها عدة مرات في بيان، إن عدد وافر من متطلبات إدخال البيانات، يمكنك استخدام العبارة التالية:

cin >> name >> age;

هذا هو ما يعادل العبارتين التاليتين:

cin >> name;
cin >> age;

تيار الخطأ المعياري (cerr)

محدد مسبقا كائنostream cerrهو مثيل للفئة. ويتبع الكائن cerr إلى الجهاز الخطأ المعياري، عادة ما يكون العرض، ولكن الهدف من ذلك هو غير مخزنةcerr، ويتم إدخال كل cerr تيار مباشرة إلى الإخراج.

cerr أيضا تيار مشغل الإدراج << وتستخدم في تركيبة، على النحو التالي:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Unable to read....";
 
   cerr << "Error message : " << str << endl;
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

Error message : Unable to read....

تيار سجل قياسي (تسد)

محدد مسبقا الأشياءتسد هو مثيل لفئة ostream.تسد الأجسام التابعة لجهاز الخطأ المعياري، عادة ما يكون العرض، ولكن يتم تخزينها مؤقتا الكائنتسد.وهذا يعني أن كل تيار في تسد سيتم تخزينها في المخزن المؤقت في حين يملأ العازلة، أو فقط عندما يتم مسح المخزن المؤقت للإخراج.

كماتسد المشغل تيار الإدراج << المستخدمة في الجمع، على النحو التالي:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Unable to read....";
 
   clog << "Error message : " << str << endl;
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

Error message : Unable to read....

من خلال هذه الأمثلة الصغيرة، ونحن لا يمكن أن تميز cout، cerr وتسد الفرق، ولكن في إعداد وتنفيذ برامج كبيرة، والفرق بينهما يصبح واضحا جدا. حتى ممارسة البرمجة الجيدة يخبرنا بأن تيار استخدام cerr لعرض رسالة خطأ، في حين أن آخرين استخدام رسائل سجل تسد الناتج تيار.