الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

نصائح العم Stroustrup

مغلق
بدأه Khaled.Alshaya في 3 أبريل 2007 · 0 رد · 1,405 مشاهدة · في المواضيع والدروس
مشاركة: واتساب X فيسبوك تيليجرام
#1

السلام عليكم ,,

سأقوم بترجمة بعض النصائح و الارشادات ( بتصرف من عندي ) التي يقدمها العم Stroustrup للمبرمجين في موقعه للاخوة الذين يريدون معرفة بعض التفاصيل ,,

و هذه النصيحة هي الأولى ,,,

غالباً ما يعاني المبتدئون عند تعاملهم مع الكائن cin في قراءة المدخلات من المستخدم , و ذلك لعدم فهمهم لطريقة عمل هذا الكائن ,,

فمثلاً لا يعرف الكثيرون كيفية قراءة سطر كامل من command line و تخزين هذا السطر في متغير string ,,

فمثلاً ..

#include <iostream>
#include <string>
using namespace std;

int main () {
   string word;

   cout << "Please enter a word : ";
   cin  >> word;

   cout << endl
	<< "You entered : "
	<< word;

   return 0;
}

و قام المستخدم بادخال التالي :

>> This is my advice

فالمفروض أن المتغير word سيخزن التالي : This is my advic و لكنه سيخزن This فقط !!!

و السبب أن الكائن cin يعتبر المسافة أو " " فاصلاً بين كل مدخل و آخر ,, لذلك سيقوم بتخزين الكلمة This ثم سيواجه المسافة فيتوقف! ,, لذلك إذا أردت قراءة سطر كامل كل ما عليك هو استخدام دالة getline و التي تقرأ سطراً كاملاً ثم تتوقف ,,

مثلاً ..

#include <iostream>
#include <string>
using namespace std;

int main () {
   string sentence;

   cout << "Please enter a word : ";
   getline ( cin, sentence );

   cout << endl
	 << "You entered : "
	 << sentence;

   return 0;
}

تأخذ الدالة get line الكائن cin و المتغير النصي الذي تريد تخزين السطر كاملاً فيه ,,

فالمتغير sentence سوف يحتوي على This is my advice ,,

إذا كان هناك أي تعليق أو استفسار نحن في الخدمة :rolleyes:

و هذا رابط النصيحة Reading a String

تحياتي ,,

تم تعديل هذه المشاركة بواسطة Khaled.Alshaya في 3 أبريل 2007 في 15:02

2

هذا الموضوع مغلق.

مواضيع مشابهة