C++ da o'zgaruvchilarni saqlashda foydalaaniladigan tiplarning turlari.
Tags: cpp, beginners, programming, help
Published: 2023-01-14 06:24:06

     

 - 1. Assalomu alaykum barchaga. Demak hozir biz ma'lumotlarni turlari haqida va ularni saqlovchilarining turlarini ko'rib chiqamiz. Birinchi bo'lib `int` => bu _integer_ so'zining qisqartmasi va butun sonlarni saqlash uchun foydalaniladi. Xotiradan esa 4 bayt joy egallaydi. Ma'lumot o'rnida 4 bayt joyimizga _- 2 mlrd_ dan _+ 2 mlrd_ gacha butun sonlar sig'adi.
 - 2.     Endi esa `float` haqida gaplashamiz. Ma'lumotlarning bu turi kasr sonlarni xotiraga saqlaydi. Bu ham xotiradan 4 bayt joy egallaydi. Hozir `int` va `float` ikkisinidan foydalanib bitta misol ko'ramiz tushinarli bo'lishligi uchun. 

```cpp
#include <iostream>

using namespace std;

int main () {

  int son = 4;
  float sonn = 4;

  cout << son/3 << endl;
  cout << sonn/3 << endl;

  return 0;
}

```
Yuqorida dastur kodini ko'rib turibsiz hozir dastur natijasini havola qilaman `int` va `float` ni farqini yaqqol ko'rasiz

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9n350rzeq4cxy5vzzxza.png)
Mana ko'rganingizdek `int` tipida saqlangan kodni qarasak javobda 1 turibti. Ya'ni bundan anglashiladiki `int` faqat butun qismini oladi. `Float` esa kasr qismini ham oladi javobini ko'rganingizdek 1.3333 holatida turibti.
    Endigi navbatimiz `string` tipiga bu tip tekstlarni saqlashda foydalaniladi. Yani manabu shaklda:

```cpp
#include<iostrem>

using namespace std;
int main () {

  string ism="Jamshidbek";
  string test="Salom";

  cout << 2+2 << endl;
  cout<< ism + test;

  return 0;
}
```
`cout <<"Salom" + "Jamshidbek";` => bu tarzda tekstlarni to'g'ridan to'g'ri qo'shib bo'lmaydi. Shuning uchun `string` tipida alohida o'zgaruvchi sifatida e'lon qilib keyin qo'shsa bo'ladi yuqoridagi misol kabi. Natijasini ham quyida havola qilaman.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g91tq0y69hnfxqbb90x5.png)
Mana bunday tarzda tekstlarni qo'shib beradi.
    Endi `char` tipi haqida gaplashsak ham bo'ladi. _Char_ inglizcha _character_ so'zining qisqartmasi va bu bittagina belgi saqlaydi. Hatto 2 ta belgi ham xotirasiga sig'maydi. **ASCII** jadvalida belgilar to'plami mavjud bo'lib shuni aytib o'tish kerakki har bir belgi ortida qandaydir son mavjud bo'ladi. Chunki biz foydalanib turgan kompyuterimiz hech qanday belgilini tushinmaydi faqat raqamlarni tushinadi holos. Ya'ni har bir belgi aslida kompyuterga qandaydir raqam orqali ifoda qilib beriladi. `int` va `char` birgalikda kelgan misol ko'ramiz tushinarli bo'lishligi uchun.

```cpp
#include<iostrem>

using namespace std;

int main () {

  int son1 = '!';
  char son2 = 33;

  cout << son1 << endl;
  cout << son2 << endl;


  return 0;
}
```
Yuqorida ataydan `int` tipiga belgi e'lon qilingan va `char` tipiga esa butun son, negaki natijada biz ko'rishimiz mumkin aksi bo'lib chiqadi ya'ni biz belgi ortida rostan ham son bor ekanligini ko'rsatish uchun shunday qilingan. Natijaga qarang

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2mtx61ncwwayuvss5rs8.png)
Natijadan ko'rinadiki ! belgisi ortida 33 raqami borligi.
    Maqolamizni yakunlashdan avval asli o'zi o'zgaruvchini qanday e'lon qilish haqida aytib o'tsam.
**data_type name=value** shu tarzda o'zgaruvchi e'lon qilinadi. Bu yerda _data_type_ => ma'limotning turi, _name_ => biz berayotgan o'zgaruvchining ismi va _value_ => o'zgaruvchi.
Yana bir narsa e'tibordan chetda qolmasligi kerak o'zgaruvchining ismi(name) ning e'lon qilish tartibi bor. Ular raqam bilan boshlab bo'lmaydi, doim kichik harf bilan boshlanishi kerak. 2 ta so'zdan iborat bo'lsa orasini ochib yozib bo'lmaydi.
_int mening yoshim=28;_ => **Wrong!!!**
_int mening_yoshim=28;_ => **Right!!!**

_int 1son=25;_ => **Wrong**
_int son1=25;_ => **Right**
_int _son=25;_ => **Right**

Shu bilan maqolamizni yakunlaymiz sizga foydali bo'ldi degan umiddaman. E'tiboringiz uchun tashakkur!!!

Tursunboev Jamshidbek (Johnny)

@dawroun