What is variable?
ကၽြန္ေတာ္တို႕
programming language ေလ့လာရာတြင္ variable ဟူေသာ စကားလံုးကို မလြဲမေသေတြ႕ၿမင္ရမည္ၿဖစ္သည္။
variable ဆိုသည္မွာ ကၽြန္ေတာ္တို႕သည္ data မ်ားအား store ၿပဳလုပ္လိုေသာအခါ
computer ၏ memory တြင္ ေနရာတစ္ေနရာအတြက္ နာမည္သတ္မွတ္ေပးၿခင္း ၿဖစ္သည္။
ကၽြန္ေတာ္တို႕သည္ program တစ္ခုစတင္ဖန္တီးရာတြင္ ပထမဦးစြာ memory place ရရွိေစရန္ variable အားအရင္ဆံုး declare(ေၾကၿငာ) ၿပဳလုပ္ရမည္ၿဖစ္သည္။Variable မ်ားအားေၾကၿငာရာတြင္ c++ ၏လုပ္ထံုးလုပ္နည္းအရ ေအာက္ပါအတိုင္းၿပဳလုပ္ရမည္ၿဖစ္သည္။
ကၽြန္ေတာ္တို႕သည္ program တစ္ခုစတင္ဖန္တီးရာတြင္ ပထမဦးစြာ memory place ရရွိေစရန္ variable အားအရင္ဆံုး declare(ေၾကၿငာ) ၿပဳလုပ္ရမည္ၿဖစ္သည္။Variable မ်ားအားေၾကၿငာရာတြင္ c++ ၏လုပ္ထံုးလုပ္နည္းအရ ေအာက္ပါအတိုင္းၿပဳလုပ္ရမည္ၿဖစ္သည္။
- ပထမဆံုးစကားလံုးသည္ underscore ( _ ) သို႕မဟုတ္ letter ၿဖစ္ရမည္။( lowercase(အေသး)(a to z) upeercase(အၾကီး)(A to Z)။Digit(ကိန္းဂဏာန္း) ၿဖင့္စတင္၍မရ။။ဥပမာ _Miet,Name,mIet,M2M.။ သို႕ေသာ္ 51miet,15Myanmar ဟုေၾကၿငာ၍မရေပ။
- Variable name တြင္ letters,underscore နွင့္ digits မ်ားပါ၀င္နိဳင္သည္။ဥပမာ mouse,Master,Player1,_M2M။
- Special charaters မ်ား ပါ၀င္၍မရ။(“ ,,!,#,$,%,^,&,*,(,),+,|,<,>,{,},[,],?,=,-,’,; ”)
- empty space(space) ပါ၀င္၍မရ။ဥပမာ Electronic Book။
- မည္သည့္ reverse words မွ ပါ၀င္အသံုးၿပဳ၍မရ။(C++ ၏ reverse words list အားေအာက္တြင္ေဖာ္ၿပထားသည္)။
- Character 32 ထက္ပိုမို၍ အသံုးမၿပဳသင့္ေပ။
Reverse Words (or) Keywords (Ключевые слова)
Keywords မ်ားသည္ ပရိုဂမ္မ်ားတြင္
သက္ဆိုင္ရာ အဓိက အဓိပါယ္မ်ားသက္မွတ္ထားၿပီးၿဖစ္ေသာ စကားလံုးမ်ား ၿဖစ္သည္။ထို႕ေၾကာင့္
ကၽြန္ေတာ္တို႕၏ ပရိုဂမ္မ်ားတြင္ identifiers အၿဖစ္အသံုးၿပဳ၍ရလိမ့္မည္ မဟုတ္ေပ။ ေအာက္ပါ
keywords မ်ားသည္ Microsoft C++ မွ reverse ၿပဳလုပ္ထားေသာအကၡရာမ်ားၿဖစ္သည္။
Variable storage and Data type
Variable ၏ အဓိကလုပ္ေဆာင္ခ်က္သည္
data မ်ားအား computer ၏ memory တြင္ store ၿပဳလုပ္ေပး၇န္ နာမည္သတ္မွတ္ေပးၿခင္း ၿဖစ္သည္။ထို
variable တစ္ခုကို store ၿပဳလုပ္ရန္အတြက္ complier သည္လိုအပ္ေသာ memory ပမာဏကို memory
တြင္ သီးသန္႕ေနရာၿပဳလုပ္ေပးမည္ၿဖစ္သည္။ ထို႕ေၾကာင့္ variable declare(ေၾကၿငာ) လွ်င္
complier သည္ အဓိကအားၿဖင့္ အပိုင္းနွစ္ပိုင္းသိရမည္ၿဖစ္သည္ (၁) ထို variable အတြက္
memory space နွင့္ ထို variable အားသတ္မွတ္မည့္ နာမည္ပင္ၿဖစ္သည္။C++ language တြင္
variable အား rename သတ္မွတ္ေပး၍မရေသာ နာမည္မ်ားအား Reverse Words (or) Keywords( အထက္တြင္ေဖာ္ၿပခဲ့ေသာ
နာမည္မ်ား) ဟုေခၚဆိုၿပီး declare ၿပဳလုပ္လိုက္ေသာ variable အတြက္ သီးသန္႕ၿပဳလုပ္ေပးေသာ
memory ပမာဏအား သိရွိနိဳင္ရန္ လည္းလိုအပ္ေပသည္။ထို memory storage ပမာဏအား တြက္ခ်က္ရာတြင္
data type ၿဖင့္ၿပန္လည္ ရည္ညြန္းၾကသည္။ထို႕ေၾကာင့္ data type မ်ားအားသိရွိထားသင့္သည္။
Data type(тип данных)
Data
type
|
Size(byte)
|
Lower
limit
|
Upper
limit
|
[singed]
char
|
1
|
-128
|
127
|
Unsinged
char
|
1
|
0
|
255
|
[singed]
short
|
2
|
-32768
|
32767
|
Unsinged
short
|
2
|
0
|
65535
|
[singed]
int |
2
|
-32768
|
32767
|
4
|
-2147483648
|
2147483647
|
|
Unsinged
|
2
|
0
|
65535
|
4
|
0
|
4294967295
|
|
[singed]
long
|
4
|
-2147483648
|
2147483647
|
Unsinged
long
|
4
|
0
|
4294967295
|
Float
|
4
|
3.4E-38
|
3.4E+38
|
Double
|
8
|
1.7E-308
|
1.7E+38
|
Long
double
|
10
|
3.4E-4923
|
1.1E+4932
|
Bool
|
1
|
False
|
True
|
int Vname;//
int(datatype) Vname(Variable name)
int သည္ data type ၿဖစ္ၿပီး Vname သည္ variable name ၿဖစ္သည္။ထိုသို႕ int Vname ဟုေၾကၿငာလိုက္ေသာ အခါတြင္ complier သည္ memory space ပမာဏ 2 bytes (int = 2 bytes) ပမာဏအား Vname အတြက္ သီးသန္႕ထားရွိမည္ၿဖစ္သည္။ ဥပမာ 0110010101101010 ၿဖစ္ရမည္။သို႕ေသာ္ memory တြင္ space ယူရာတြင္ ထိုကဲ့သို႕ 0 1 ပမာဏမ်ားသည္ 16 လံုးတစ္ဆက္တည္း တည္ရွိလိမ့္မည္မဟုတ္ေပ။8 bits ပမာဏၿဖစ္ေသာ 1 byte သည္ memory တြင္အေသးငယ္ဆံုးပမာဏ ၿဖစ္ၿပီး 2 byte အတြက္ memory ပမာဏအတြက္ memory ပမာဏမ်ားေပါင္းစပ္ၿပီး adderss တစ္ခုအၿဖစ္တည္ရွိမည္ၿဖစ္သည္။( adderss အေၾကာင္းအား ေနာက္တြင္ ဆက္လက္ေဖာ္ၿပမည္ ၿဖစ္သည္)။
int သည္ data type ၿဖစ္ၿပီး Vname သည္ variable name ၿဖစ္သည္။ထိုသို႕ int Vname ဟုေၾကၿငာလိုက္ေသာ အခါတြင္ complier သည္ memory space ပမာဏ 2 bytes (int = 2 bytes) ပမာဏအား Vname အတြက္ သီးသန္႕ထားရွိမည္ၿဖစ္သည္။ ဥပမာ 0110010101101010 ၿဖစ္ရမည္။သို႕ေသာ္ memory တြင္ space ယူရာတြင္ ထိုကဲ့သို႕ 0 1 ပမာဏမ်ားသည္ 16 လံုးတစ္ဆက္တည္း တည္ရွိလိမ့္မည္မဟုတ္ေပ။8 bits ပမာဏၿဖစ္ေသာ 1 byte သည္ memory တြင္အေသးငယ္ဆံုးပမာဏ ၿဖစ္ၿပီး 2 byte အတြက္ memory ပမာဏအတြက္ memory ပမာဏမ်ားေပါင္းစပ္ၿပီး adderss တစ္ခုအၿဖစ္တည္ရွိမည္ၿဖစ္သည္။( adderss အေၾကာင္းအား ေနာက္တြင္ ဆက္လက္ေဖာ္ၿပမည္ ၿဖစ္သည္)။
written by zmk@miet51
No comments:
Post a Comment