আমার জানা মতে এই ডাটাটাইপ এর বিষয়ে সবারই কিছুনা কিছু প্রবলেম থাকেই । এমনকি অনেক বাঘা বাঘা প্রগ্রামারদের ও এই বিষয়টাতে আবছা আবছা ধারনা থাকে , ক্লিয়ার ধারনা থাকেনা । কিন্তু ডাটাটাইপ সম্পরকে ক্লিয়ার ধারনা থাকা অত্যন্ত জরুরী নাহলে সব ঠিক থাকা সত্তেও বিভিন্ন্য অনলাইন জাজ এ বিনামূল্যে খেতে হবে WA . এই WA কিন্তু যেমন তেমন জিনিস না, প্রগ্রামারদের জন্য এইটা একটা বিভীষিকার নাম। যাইহোক নিচে এই বিষয়ে বিস্তারিত আলোচনা করা হল।
সি তে অথবা সি++ এ যে ডাটা টাইপ আছে সেগুলার টাইপ এবং কিওয়ার্ড গুলা নিচে দেয়া হল
উপরে প্রতিটা টাইপ দুইবার করে লিখা আছে যেন এই সুযোগে দুইবার করে পড়া হয়ে যাই । মোটামুটি এইগুলাই হল ডাটা টাইপের বিষয়গুলা । আশা করি হেল্পফুল হবে। এতক্ষণ আমাকে সহ্য করার জন্য ধন্যবাদ ।
সি তে অথবা সি++ এ যে ডাটা টাইপ আছে সেগুলার টাইপ এবং কিওয়ার্ড গুলা নিচে দেয়া হল
টাইপ | কিওয়ার্ড |
---|---|
Boolean | bool |
Character | char |
Integer | int |
Floating point | float |
Double floating point | double |
Valueless | void |
Wide character | wchar_t |
এইখানে নিচের দুইটা ছাড়া বাকি সবগুলাই খুব কাজের টাইপ । Character, Integer, float, double এইগুলা আবার কয়েক ভাগে বিভক্ত যেমনঃ
- ১। signed
- ২। unsigned
- ৩। short
- ৪। long
এইগুলা দেখে ভয় পাওয়ার কিছু নাই । তেমন কিছুই না । সাইনড মানে হইল রেঞ্জ মাইনাস থেকে প্লাস পর্যন্ত আর আন্সাইন্ড মানে হইল শুধুমাত্র প্লাস পর্যন্ত নিচের রেঞ্জ গুলা দেখলে আরো ভাল বুঝতে পারবে।
টাইপ
|
বাইটের সংখ্যা
|
বিভিন্যতা
|
রেঞ্জ
|
---|---|---|---|
int
|
4
|
signed (%d)
|
–2,147,483,648 to 2,147,483,647 ( -2^31 to 2^31-1 )
|
unsigned int
|
4
|
unsigned (%u)
|
0 to 4,294,967,295 ( 0 to 2^32-1 )
|
__int8
|
1
|
char (%c)
|
–128 to 127 ( -2^7 to 2^7-1 )
|
unsigned __int8
|
1
|
unsigned char (%c)
|
0 to 255 ( 0 to 2^8-1 )
|
__int16
|
2
|
short, short int, signed short int (%hi)
|
–32,768 to 32,767 ( -2^15 to 2^15-1 )
|
unsigned __int16
|
2
|
unsigned short, unsigned short int (%hu)
|
0 to 65,535 ( 0 to 2^16-1 )
|
__int32
|
4
|
signed, signed int, int (%d)
|
–2,147,483,648 to 2,147,483,647 ( -2^31 to 2^31-1 )
|
unsigned __int32
|
4
|
unsigned, unsigned int(%u)
|
0 to 4,294,967,295 ( 0 to 2^32-1 )
|
__int64
|
8
|
long long, signed long long (%lld)
|
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 ( -2^63 to 2^63-1 )
|
unsigned __int64
|
8
|
unsigned long long(%llu)
|
0 to 18,446,744,073,709,551,615 ( 0 to 2^64-1 )
|
bool
|
1
|
none
|
false or true
|
char
|
1
|
none
|
–128 to 127 by default
0 to 255 when compiled by using /J
|
signed char
|
1
|
none
|
–128 to 127 ( -2^7 to 2^7-1 )
|
unsigned char
|
1
|
none (%c)
|
0 to 255 ( 0 to 2^8-1 )
|
short
|
2
|
short int, signed short int (%hi)
|
–32,768 to 32,767 ( -2^15 to 2^15-1 )
|
unsigned short
|
2
|
unsigned short int(%ui)
|
0 to 65,535 ( 0 to 2^16-1 )
|
long
|
4
|
long int, signed long int(%ld)
|
–2,147,483,648 to 2,147,483,647 ( -2^31 to 2^31-1 )
|
unsigned long
|
4
|
unsigned long int(%lu)
|
0 to 4,294,967,295 ( 0 to 2^32-1 )
|
long long
|
8
|
none (but equivalent to __int64)(%lld)
|
–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 ( -2^63 to 2^63-1 )
|
unsigned long long
|
8
|
none (but equivalent to unsigned __int64) (%lld)
|
0 to 18,446,744,073,709,551,615 ( 0 to 2^64-1 )
|
enum
|
varies
|
none
|
See 3691ceca-05fb-4b82-b1ae-5c4618cda91a#bkmkRemarks later in this article
|
float
|
4
|
none (%f)
|
3.4E +/- 38 (7 digits)
|
double
|
8
|
none (%lf)
|
1.7E +/- 308 (15 digits)
|
long double
|
same as double
|
none (%llf)
|
Same as double
|
wchar_t
|
2
|
__wchar_t
|
0 to 65,535
|
No comments:
Post a Comment