المتغيرات Variables في C++
المتغيرات variables في سي بلاس بلاس هي عبارة عن شيئ تربطه بشيئ آخر مثلاً تجد قيمة a = 60, و المتغير يحتل جزء من الذاكرة العشوائية لحين الإنتهاء منه. يعني نضع قيمة a حتى نستعملها في وقت لآحق. و يبقى a جالساً في الذاكرة العشوائية ينتظر لحين طلبه ثم يذهب بعد انتهاء البرنامج.
المتغيرات variables هي أماكن يتم حجزها ضمن الذاكرة والهدف من المتغيرات variables هو تخزين بيانات فيها أثناء عمل البرنامج. ويوجد أنوع عديدة من المتغيرات variables والنوع الذي نعطيه للمتغير هو يجعل النظام (نظام التشغيل). يحدد نوع البيانات الذي يمكن تخزينه في المساحة المحجوزة للمتغير في الذاكرة. مثلاً إذا أردنا تخزين رقم ما في متغير يجب أن يكون نوع المتغير variable في الأساس مخصص لتخزين أرقام Integer حتى يسمح بذلك.
أنواع البيانات في لغة C++
يوجد في هذه اللغة أنواع عديدة من أنواع البيانات ولكن أشهرها خمسة أنواع سوف نشرحها بالتفصيل, وهذه الأنواع هي:
- بيانات حرفية char.
- بيانات صحيحة integer.
- بيانات عددية عشرية float.
- بيانات عددية عشرية طويلة double.
- بيانات منطقية صائب ام خاطئ bool.
المتغيرات الحرفية char في C++
يتضمن هذا النوع من البيانات الحروف (الأجنبية) بكافة أشكالها (حرف واحد أو رقم واحد أو فراغ) ويحتل مساحة 1 بايت من الذاكرة. وبمعنى آخر هذا النوع يتم إستخدامه لأجل تخزين حرف (أجنبي) أو عدد صحيح قيمته تمثل حرف نسبةً لرقم الآسكي ASCII Code الخاص به.
و يكون البيانات المخزنة بالشكل
'A' , 'B' , ' 5'
كل واحد منها يعتبر نوع بيانات char ومساحته هي 1 بايت في الذاكرة.
char a,b
a = 'a';
b = ' ';
char var1;
var1 = '.';
نوع البيانات char يمكنه تخزين أي حرف (أجنبي) لأن الحرف الأجنبي يحتاج مساحة 1 بايت من الذاكرة حتى يتم تخزينه, بينما الحرف العربي يحتاج مساحة 2 بايت كي يتم تخزينه بشكل صحيح في الذاكرة
المتغيرات العددية الصحيحة int
تتضمن قيم عددية صحيحة, أي عدد لا يحتوي على فاصلة عشرية و يحتل مساحة 4 بايت.
int a = 100;
هي نفسها
int a;
a = 100;
المتغيرات العددية العشرية float
اعداد حقيقية او كسرية, يمكن لهذا النوع من البيانات تخزين عدد به فاصلة عشرية, ويمكن للعدد أن يحتوي على سبعة أرقام بعد الفاصلة, ويحتل مساحة 4 بايت.
وتكون البيانات بالشكل
0.5 , 4.60 , 5.14
جميع الأعداد السابقة تعتبر float لأن بها فاصلة عشرية والعدد قصير
float x;
x = 5.2;
متغير float وهو x و قيمة هذا المتغير هي 5.2.
المتغيرات العددية العشرية الطويلة double
المتغيرات double هي أعداد حقيقية أو كسرية, يمكن لهذا النوع من البيانات تخزين عدد به فاصلة عشرية, و يمكن تمثيلها في 15 رقم بعد الفاصلة, ويحتل مساحة 8 بايت. ويعتبر أكثر دقة من النوع float في العمليات الحسابية الدقيقة.
double x = 14.5;
متغيرات تسمى صائب ام خاطئ bool
يستخدم من أجل تخزين إما القيمه true أو القيمة false ويحتل مساحة 1 بايت.
bool x = flse;
التحويل بين المتغيرات في ++C
إحدى أهم الأمور في البرمجة هو التحويل بين المتغيرات وخصوصاً عند القراءة من المستخدم, عند القراءة من المستخدم تكون القيمة دائماً نص text, فنحتاج إحياناً أن تكون القيمة رقم.
- قسمة عدد صحيح على عدد صحيح يكون الناتج صحيح.
- قسمة عدد حقيقي على عدد صحيح يكون الناتج صحيح.
- قسمة عدد حقيقي على عدد صحيح يكون الناتج حقيقي.
- لا توجد قسمة عدد صحيح على عدد حقيقي.
مثال 1
#include <iostream>
#include <string>
using namespace std;
int main()
{
int i = 10;
string a = to_string(i);
cout << a;
return 0;
}
إستدعينا المكتبة string وهي مسؤولة عن التعامل مع التغيير بين نصوص و أرقام, و أنشأنا متغير عددي وهو i و قيمته 10.
ثم أنشأنا متغير نصي وهو a و قيمته هي تحويل المتغير i العددي إلى نص عن طريق الدالة to_string().
و قمنا بطباعة a يعني أن العدد تحول إلى نص.
مثال 2
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s = "10";
int i = stoi(s);
cout << i << '\n';
return 0;
}
إستدعينا المكتبة string وهي مسؤولة عن التعامل مع التغيير بين نصوص و أرقام, و أنشأنا متغير نصي وهو s و قيمته 10.
ثم أنشأنا متغير عددي وهو i و قيمته هي تحويل المتغير s النصي إلى عدد صحيح عن طريق الدالة stoil().
و قمنا بطباعة i يعني أن النص تحول إلى عدد صحيح.