بتـــــاريخ : 2/22/2011 7:32:39 PM
الفــــــــئة
  • الحـــــــــــاسب
  • التعليقات المشاهدات التقييمات
    0 1228 0


    نصائح العم Stroustrup النصيحة الأولى : كيفية قراءة سطر كامل من command line!

    الناقل : elmasry | العمر :42 | الكاتب الأصلى : Khaled.Alshaya | المصدر : www.arabteam2000-forum.com

    كلمات مفتاحية  :

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


    سأقوم بترجمة بعض النصائح و الارشادات ( بتصرف من عندي ) التي يقدمها العم 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

    تحياتي ,,

    كلمات مفتاحية  :

    تعليقات الزوار ()