C++

**C++** (дауысталуы "си плас плас") 1983 жылы Bell Labs зертханасында Бьёрн Страустрап дамытқан бағдарламалау тілі.  2019 жылға қарай әлемдегі таралуы бойынша үшінші бағдарламалау тілі болып келеді. C++ өзінің ұзақ тарихында көптеген өзгерістерден өтіп, бүгінгі күнге өте жылдам, компиляцияланатын, көптеген кітапханаларға ие тілге айналды. C++ жоғарғы және төменгі деңгейдегі программалау тілдерінің қасиеттеріне ие. 

## Тарихы
С++ тiлi BCPL және B тiлдердiң негiзiнде құралған және С тiлiнен дамыған. BCPL тiлi компилятордан жазуға және операциялық жүйенi бағдарламамен қамтамасыз етуге арналған. Бұл тiлдi 1967 жылы Мартин Ричард ойлап тапқан. Кен Томпсон В тiлiнiң көптеген мүмкiндiктерiн BCPL дубликатында және В тiлiн UNIX операциялық жүйелерiнiң алғашқы версияларын құру үшiн 1970 жылы Bell Laboratories-те DEC PDP-7 компьютерiнде қолданылды. BCPL және В тiлдерi қолдануға тиiмсiз болды. Онда мәлiметтiң әрбiр элементi жадыда бiр сөздiң орнын алады және мәлiмет элементтерiн өңдеуде бағдарламашыларға ауыртпалығын тигiздi.

С тiлi В тiлiнiң негiзiнде дамыды. С тiлiн Bell Laboratories-те 1972 жылы Деннис Ритчи DEC PDP-11 компьютерiнде жасады. С  BCPL және В тiлдерiнiң көптеген маңызды концепцияларын және мәлiмет типтерiн және басқа да қасиеттерiн қолданды. С тiлi UNIX операциялық жүйесiн өңдеудегi тiл ретiнде кеңiнен танымал болды. Қазiргi таңда барлық операциялық жүйелер С және С++ тiлдерiнде жазылған. Соңғы он жылдықта С тiлi көптеген компьютерлерде қолайлы болды.

С++ - С тiлiнiң кеңейтiлген түрi. Оны 1980 жылдың басында Бъерн Строустроп Bell Laboratories-сында өңдеп шығарған. С++ тiлi С тiлiнiң бiрқатар қасиеттерiн реттеудi қамтамасыз етедi және ең маңыздысы объектi-бағдарланған бағдарламалық мүмкiндiгiн қамтамасыз етедi. Бұл бағдарламамен қамтамасыздандыру әлемiндегi революциялық идея болып табылады.

Басқада бағдарламалық тiлдер көптеген қажеттi эффект бере алмағандықтан, С++ алғашқыда ең жоғарғы деңгейдегi нақтылы оқиғалар үлгiлерiн өңдеу мақсаты үшiн құрылған тiл болды.

С++ тiлiн құруда С тiлiнiң сәйкестiгiн сақтап қалуға ерекше көңiл бөлiндi. С++ тiлiнiң көмегiмен кең көлемдi бағдарламалық проектiлер құруға болады. С++ тiлiнiң арқасында берiлген мәлiметтер типтерiне бақылауды күшейтуге және көптеген қосымша эффектiлердi жеңе алатын болдық. С++ тiлiнiң ең маңызды табысы объектi-бағдарланған бағдарламалау болып табылады. С++-тiң барлық жеңiлдiктерiн пайдалану үшiн негiзгi объектiлердi және олармен байланысқан операцияларды анықтап алу керек.

## С++ тілінің ерекшеліктері

### Көлемінің шағындығы
С++ тілінің синтаксистік ережелері басқа тілдерге қарағанда аз,оның компиляторын 256 Кб жады көлемі арқылы-ақ жазып шығуға болады.Мұндағы операциялық әрекеттер,олардың комбинациясы жетерлік, бірақ қордағы түйінді сөздер саны да көп емес, Дэннис Ритчи жасаған алғашқы С++ тілінде тек 27 түйінді сөз болды,кейіннен ANSI C стандартында тағы бірнеше сөз қосылды.

### Тілдің командалар жиыны
Microsoft С/С++ нұсқасында тағы 19 командалар мен түйінді сөздер қосылды,соның нәтижесінде олар 66 болды. Командалар жыл сайын жанартулармен қосылуда.

Басқа программалау тілдердегі функциялар С++ тілінде жоқ,мысалы,енгізу-шығару операторлары да кездеспейді, оның есесіне кітапханалық әр түрлі функциялар саны жеткілікті.

### Жылдам істейтіндігі
С++ компиляторлары жасаған программа кодтары шағын,әрі жылдам істейді,оның үстіне тілдің аппараттық құралдарға жақындығы ассемблер тіліменен қатар жылдамдықпен жұмыс істеуге мүмкіндік береді.

### Типтері де күрделі емес
Паскальға қарағанда,мәліметтерді типтендіру мұнда төменгі деңгейде ,ол типтерді бір-біріне жеңіл ауыстырады.Мұндай қасиет В тілінен келді.Мысалы,программаның бір жерінде айнымалы символдық болса,ал басқа жерде оны символдың

ASCI –коды (одан 32-ні алып) ретінде қарастыруға болады.

### Құрылымды тіл болғандығы
С++ тілінде қазіргі тілдерде болатын барлық басқару операторлары бар. 1971 жылдың өзінде-ақ жаңа ғана жасалған С++ тілі алғашқы құрылымдық программалау тілі ретінде танылған еді.Мұнда;for – цикл операторы, if және if-else конструкциясы, таңдау операторы (switch) және while циклы да бар.

### Модульдік программалауды сүйемелдеуі
С++ тілінде жеке компиляциялау мен біріктіруден құралатын модульдік программалау концепциясы пайданылады.Мұнда тек программаның өзгертілген бөліктерін жеке компиляциялау мүмкіндігі бар.

### Екілік разрядтағы өңдеуі
Жүйелік программалауда екілік разрядтарды өңдеу ісі жиі кездеседі.Әрине, UNIX операциялық системасымен тығыз байланыста пайда болған С++ тілінің екілік сандармен жұмыс істеу мүмкіндіктері өте зор.

Нұсқаушы айнымалылар

Операциялық жүйе тіліне қойылатын тағы бір талап — ол жады аймақтарын адрестеу мүмкіндігінің болуы. Мұндй мүмкіндік программа орындалуын жылдамдатады. С++ тілінде мұндай істі нұсқаушылар (указатели) атқарады және олармен арифметикалық амалдарды орындауға болады.

### Құрылымы икемді тіл
С++ тіліндегі барлық массивтер — бір өлшемді. Көп өлшемді массивтер осы бір өлшемді массивтерден құрылады. Массивтер мен құрылымдар (жазбалар) бір – бірімен керекті түрде байланысып, мәліметтер базасын құрайды.

## Дереккөздер

## Сыртқы сілтемелер
* https://www.geeksforgeeks.org/top-10-programming-languages-of-the-world-2019-to-begin-with/
* https://technocmd.com/deadliest-programming-languages-of-the-world/ 
* 

Санат:Бағдарламалау тілдері
Санат:1983 жылы пайда болғандар
Санат:C++