التدريب على أنواع المتغيرات في لغة ++ C || تعلم c++ خطوة بخطوة


التدريب على المتغيرات المختلفة  ++Variables in C

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

إنها مجموعة من القيم التي يمكن تخزينها في الذاكرة ومجموعة من العمليات التي يمكن تطبيقها على متغير.


يجب أن يبدأ اسم المتغير بحرف أو underscore ( _ ) ويمكن أن يتكون أيضًا من مجموعة من الأحرف والأرقام وunderscore ( _ ). تختلف الأحرف الكبيرة والصغيرة لأن ++C حساسة لحالة الأحرف.


كما هو موضح في الدرس السابق، فإن المتغيرات الرئيسية التالية موجودة في ++C:


الرقمالنوع والوصف
1

bool

حفض قيمة إما صحيح أو خطأ.

2

char

تُستخدم لتخزين بيانات الأحرف مثل "a" و "z" و "W"

3

int

تستخدم لتخزين الأعداد الصحيحة مثل 548 ، -9 ، 8649

4

float

يستخدم لتخزين الأرقام العشرية مثل 98.1 ، 3642.66

5

double

تُستخدم float للأرقام العشرية الكبيرة

6

void

يشير إلى عدم وجود نوع البيانات

7

wchar_t

تستخدم لتخزين أكبر حقل لأنواع الأحرف المحددة


تتيح لنا C++ أيضًا تحديد أنواع مختلفة من المتغيرات مثل  (array) و(classess) و (pointer) وبيانات (enum) وما إلى ذلك، والتي سيتم شرحها في الدروس اللاحقة. 


الان سنشرح كيفية تعريف، declare واستخدام أنواع مختلفة من المتغيرات.


تحديد متغير في ++C

عند تحديد متغير، فإنه يخبر المترجم فعليًا بمكان ومساحة الذاكرة التي نحتاجها لإنشاء متغير. من خلال تحديد متغير، نحدد نوعه، والذي يتضمن متغيرًا واحدًا أو أكثر من نفس النوع.

يتم تعريف المتغير في ++C على النحو التالي:

type variable_list;


يجب أن يكون type هنا نوع بيانات صالحًا يتضمن، char ، w_char ، int ، float ، double ، bool ، double أو أي كائن معرف من قبل المستخدم. قد تحتوي variable_list على واحد أو أكثر من المعرفات أو الأسماء مفصولة بفواصل. بعض declarations الصالحة أدناه:

 

int    i, j, k;
char c, ch;
float f, salary;
double d;
نسخ

السطر int i ، j ، k  يحدد المتغيرات ويوجه المترجم لإنشاء متغيرات باسم i و j و k من النوع int. يمكنك أيضًا تعيين المتغيرات عند تحديد ذلك باستخدام عامل التشغيل يساوي (=) للرفض.

مثال:
type variable_name = value;


فيما يلي بعض الأمثلة على هذه العبارة:
 

extern int d = 3, f = 5;    // declaration of d and f.
int d = 3, f = 5; // definition and initializing d and f.
byte z = 22; // definition and initializes z.
char x = 'x'; // the variable x has the value 'x'


للتعريف بدون initializer: تتم تهيئة المتغيرات ذات طول التخزين الثابت ضمنيًا باستخدام NULL (جميع البايت هي 0)؛ لم يتم تحديد القيمة الأولية لجميع المتغيرات الأخرى.


تعريف متغير في ++C

عندما يحتوي برنامج ما على مصدر ملفات متعددة ونريد استخدام متغير عام خارج الملف المحدد، يجب أن نعلن عن هذا المتغير في مكان آخر غير الملف الأصلي.

يوفر إعلان المتغير تأكيدًا للمترجم بوجود متغير واحد موجود بالنوع والاسم المحددين بحيث يتابع المحول البرمجي مزيدًا من التجميع دون الحاجة إلى تفاصيل كاملة حول المتغير. إعلان المتغير له معناه في وقت التجميع فقط ، يحتاج المترجم إلى تعريف متغير فعلي في وقت ربط البرنامج.

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


المثال التالي حيث تم  declare عن المتغير أعلاه، ولكن تم تعريفه داخل الوظيفة الرئيسية.

#include <iostream>
using namespace std;

// Variable declaration:
extern int a, b;
extern int c;
extern float f;

int main () {
// Variable definition:
int a, b;
int c;
float f;

// actual initialization
a = 10;
b = 20;
c = a + b;

cout << c << endl ;

f = 70.0/3.0;
cout << f << endl ;

return 0;
}
C ++


عندما يتم ترجمة رمز المثال أعلاه وتنفيذها، سيتم عرض النتيجة التالية:

30
23.3333


بالضبط نفس المفهوم المستخدم عند التصريح عن متغير يستخدم للإعلان عن دالة. فمثلا:

// function declaration
int func();
int main() {
// function call
int i = func();
}

// function definition
int func() {
return 0;
}


شرح المفاهيم Lvalues ​​- Rvalues 


يوجد نوعان من التعبيرات في ++C:


Lvalue : التعبيرات التي تشير إلى موقع ذاكرة تسمى تعبير "lvalue". قد تظهر قيمة lvalue إما في الجانب الأيسر أو الأيمن من المهمة. (مثل المتغيرات التي يمكن معادلتها على كلا الجانبين).


Rvalue : يشير المصطلح إلى قيمة بيانات مخزنة في بعض العناوين في الذاكرة. rvalue هو تعبير لا يمكن تعيين قيمة له مما يعني أن rvalue قد تظهر على الجانب الأيمن ولكن ليس على الجانب الأيسر من المهمة. (مثل الأرقام التي يمكن أن تكون على يمين المعادلة فقط ولا يمكن تعيين قيمة لها).


المتغيرات هي قيم lvalues وبالتالي قد تظهر على الجانب الأيسر من المهمة. القيم الحرفية الرقمية هي قيم rvalues وبالتالي قد لا يتم تعيينها ولا يمكن أن تظهر على الجانب الأيسر.



في المثال أدناه، يمكنك رؤية المتغير g المستخدم في كلا طرفي المعادلة:


// يمكن أن تكون المتغيرات متساوية في كلا الجانبين
int g = 20;
int b = g;


في المثال التالي، والذي يكون دائمًا تعبيرًا خاطئًا، لا يمكن تعيين رقم واحد لرقم آخر.


10 = 20;



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