> For the complete documentation index, see [llms.txt](https://isystem.gitbook.io/programming/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://isystem.gitbook.io/programming/c-++-asoslari/2.-c++-asoslari/2.1.-c++-sintaksisi.md).

# 2.2. Asosiy sintaksis

C++ sintaksisi yaxshiroq tushunish uchun quyidagi kodni tahlil qilib chiqamiz:

```cpp
#include <iostream>
using namespace std;

int main() {
  cout << "Hello World!";
  return 0;
}
```

{% hint style="info" %}
&#x20;Agar **#include**  va **nomlar maydonining (namespace)** qanday ishlashini tushunmasangiz, xavotir olmang. Buni deyarli har doim sizning dasturingizda ko'rinadigan narsa deb o'ylang.
{% endhint %}

**Qator 1:** `#include <iostream>` bu **sarlavha fayllar kutubxonasi** bo'lib, u bizga kirish va chiqish ob'ektlari bilan ishlashga imkon beradi, masalan, cout (5 -qatorda ishlatiladi). Sarlavha fayllari C ++ dasturlariga funksionallik qo'shadi.

**Qator 2:** `using namespace std` standart kutubxonadagi ob'ektlar va o'zgaruvchilar uchun nomlardan foydalanishimiz mumkinligini anglatadi.

**Qator 3:** Bo'sh chiziq. C ++ bo'sh joyni e'tiborsiz qoldiradi.

**Qator 4:** Har doim C ++ dasturida paydo bo'ladigan yana bir narsa - `int main()`. Bu funksiya deyiladi. Qavslar `{}` ichidagi har qanday kod bajariladi.

**Qator 5:** `cout` ("see-out" deb talaffuz qilinadi) - matnni chiqarish/chop etish uchun mahsus kiritish operatori - *insertion operator* (<<) bilan birgalikda ishlatiladigan ob'ekt. Bizning misolimizda "Salom dunyo" chiqadi.

{% hint style="info" %}
Har bir C ++  bayonoti (statement) nuqta -vergul  - `;`bilan tugaydi .
{% endhint %}

{% hint style="warning" %}
compiler -   bo'shliqlarga e'tibor bermaydi. Biroq, bir nechta satrlar kodni o'qishni osonlashtiradi.
{% endhint %}

**QATOR 6:** `return 0` asosiy funktsiyani tugatadi.

**QATOR 7:**  Asosiy funktsiyani tugatish uchun yopiladigan jingalak qavs `}` qo'shishni unutmang.&#x20;

###

### Nom maydoni - Namespace  o'chirish&#x20;

Siz standart nomlar kutubxonasisiz ishlaydigan ba'zi C ++ dasturlarini ko'rishingiz mumkin. Nom maydonini ishlatadigan std chizig'ini olib tashlash va std kalit so'ziga almashtirish mumkin, keyin ba'zi ob'ektlar uchun :: operatori:

```cpp
#include <iostream>

int main() {
  std::cout << "Salom Dunyo!";
  return 0;
}
```

```cpp
#include <iostream>

using namespace std;

int main() {
  cout << "Salom Dunyo!";
  return 0;
}
```
