ان في بداية كتابة اي برنامج في لغة C++ فلابد من ان يكون هناك مساحة في الذاكرة لخزن المعلومات فيه, إذن لابد ان يحتوي اي برنامج على متغيرات اي أوعية لوضع البيانات فيها حسب نوع البيان فالاسماء هي متغيرات حرفية والاعداد هي اما اعداد صحيحة او عشرية مثلا فمثلا بيانات موظف يقوم احد البرامج بالعمل عليها اتخيل ان تكون كما يلي
اذا لابد من التفكير في كيفية المتغيرات المناسبة لكل بيان فمثلا لو اخطأت واخترت بيان الراتب عدد صحيح فاذا كان راتبه وهو شئ متوقع 355.5 فلن يقبل لان البرنامج سوف يحوله الى عدد صحيح مقرب وهو 356 وهو ليس خطأ البرنامج وانما خطئك انت لانك اعلنت ان متغير الراتب عدد صحيح فما ذنب بائع الفاكهه اذا طلبت منه شراء تفاح وانت تقصد برتقال انما قام البائع بتنفيذ ما سمعه منك مثل هذا الخطأ يسمى خطأ منطقي لان الكومبيوتر لا يعترض عليه
الخلاصة:
في كتب اللغة التي تريد تعلمها ابحث عن اوامر الاعلان عن المتغير وسأعطيك مثال بلغة السي
بقى ان تعرف ان معظم اللغات تقدم حيز تخزين مختلف لكل نوع من البيانات وسيتضح ذلك كما يلي
متغيرات الاعداد الصحيحة
فمثلا لتحديد رقم الموظف سوف نستخدم النوع الاول اذا كان اجمالي عدد الموظفين بالشركة لا يزيد عن
32767 ولانستخدم النوع الثاني مع انه مقبول والسبب ان النوع الثاني سوف يحجز اربعة بايتات للرقم
في حين انني احتاج الى اثنين فقط مع المتغير الاول وبالتالي تتضخم ملفات البيانات بلا داعي
المثال
بالطبع مع اللغة التي سوف تستخدمها ستختلف الصيغة لكن المنطق والفكرة واحدة
متغيرات الاعداد العشرية
ملاحظة:
E38 معناها 10 اوس 38 او 10 مرفوعة الى القوة 38 ولايهمك ذلك الآن
مثال
بالطبع يمكنك استخدام المتغير الاول لتخزين راتب الموظف ولكن استخدم الثاني لتخزين اجمالي رواتب الموظفين لاعطاء حيز تخزين اكبر
مثال
عند استخدام متغير ذو سعة تخزين اقل لاستيعاب رقم او بيان اكبر من سعته فلن يعترض البرنامج ولكن سوف
تحصل على نتائج خاطئة مثلما تريد سكب برميل من الماء في كأس صغير فلن يعترض الكأس ولكن سوف يأخذ
حاجته فقط والباقي سوف ينسكب على الارض
متغيرات الحروف
بفرض انك خصصت اقصى عدد لاسم الموظف بثلاثين حرف
مثال
وينصح بعدم الاسراف في استخدام حيز تخزين اكثر مما تحتاج
اذا لابد من التفكير في كيفية المتغيرات المناسبة لكل بيان فمثلا لو اخطأت واخترت بيان الراتب عدد صحيح فاذا كان راتبه وهو شئ متوقع 355.5 فلن يقبل لان البرنامج سوف يحوله الى عدد صحيح مقرب وهو 356 وهو ليس خطأ البرنامج وانما خطئك انت لانك اعلنت ان متغير الراتب عدد صحيح فما ذنب بائع الفاكهه اذا طلبت منه شراء تفاح وانت تقصد برتقال انما قام البائع بتنفيذ ما سمعه منك مثل هذا الخطأ يسمى خطأ منطقي لان الكومبيوتر لا يعترض عليه
الخلاصة:
في كتب اللغة التي تريد تعلمها ابحث عن اوامر الاعلان عن المتغير وسأعطيك مثال بلغة السي
بقى ان تعرف ان معظم اللغات تقدم حيز تخزين مختلف لكل نوع من البيانات وسيتضح ذلك كما يلي
متغيرات الاعداد الصحيحة
فمثلا لتحديد رقم الموظف سوف نستخدم النوع الاول اذا كان اجمالي عدد الموظفين بالشركة لا يزيد عن
32767 ولانستخدم النوع الثاني مع انه مقبول والسبب ان النوع الثاني سوف يحجز اربعة بايتات للرقم
في حين انني احتاج الى اثنين فقط مع المتغير الاول وبالتالي تتضخم ملفات البيانات بلا داعي
المثال
Code
int SerialNo;
long SerialNo;
unsigned long SeialNo;
long SerialNo;
unsigned long SeialNo;
بالطبع مع اللغة التي سوف تستخدمها ستختلف الصيغة لكن المنطق والفكرة واحدة
متغيرات الاعداد العشرية
ملاحظة:
E38 معناها 10 اوس 38 او 10 مرفوعة الى القوة 38 ولايهمك ذلك الآن
مثال
Code
float Salary ;
double Salary;
long double Salry;
double Salary;
long double Salry;
بالطبع يمكنك استخدام المتغير الاول لتخزين راتب الموظف ولكن استخدم الثاني لتخزين اجمالي رواتب الموظفين لاعطاء حيز تخزين اكبر
مثال
Code
float Salary;
double TotalSalaries;
double TotalSalaries;
عند استخدام متغير ذو سعة تخزين اقل لاستيعاب رقم او بيان اكبر من سعته فلن يعترض البرنامج ولكن سوف
تحصل على نتائج خاطئة مثلما تريد سكب برميل من الماء في كأس صغير فلن يعترض الكأس ولكن سوف يأخذ
حاجته فقط والباقي سوف ينسكب على الارض
متغيرات الحروف
بفرض انك خصصت اقصى عدد لاسم الموظف بثلاثين حرف
مثال
Code
char HisName [30];
وينصح بعدم الاسراف في استخدام حيز تخزين اكثر مما تحتاج