С++ тілінде бағдарламалау

Содержание

Слайд 2

С тілі туралы

C тілінің бірнеше маңызды ерекшелігі бар, олар соны басқа программалау

С тілі туралы C тілінің бірнеше маңызды ерекшелігі бар, олар соны басқа
тілдерден бөледі.
C тілі құрылымдық программалаудың толық конструкциялар жиынтығын, модульдығын, бағдарламаның блоктык құрылымын қолдайды.

Слайд 3

C тілдің кейбір ерекшеліктері.

C тілінде кейбір төмен деңгейлі операциялар тізімі жүзеге асырылған.

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

Слайд 4

Ескерту:

Кейбір маңызды емес жағдаларды ескермей,  C++ тілі С тілінің бір түрі болып табылады.
С

Ескерту: Кейбір маңызды емес жағдаларды ескермей, C++ тілі С тілінің бір түрі
тілі ұсынатын мүмкіндіктерден басқа, С++ тілі жаңа типтерді анықтаудың икемді және тиімді құралдарын қамтамасыз етеді.

Слайд 5

Мынаны білу жөн:

 C++ тіліндегі басты ұғым – класс.
Класстар ақпаратты сақтау, мәліметтердің кепілдендірілген инциализациясын,

Мынаны білу жөн: C++ тіліндегі басты ұғым – класс. Класстар ақпаратты сақтау,
пайдаланушылар анықтайтын типтертің айқын емес түрлендірілуі, типтің динамикалық анықталуы, пайдаланушының жадыны басқаруды бақылау және операторлардың қайта жүктеу механизмін қамтамасыз етеді.

Слайд 6

Препроцессор

Препроцессор – сіздің бағдарламаңыздың мәтінін компиляторға дейін өңдейтін бағдарлама.
Препроцессордың жұмысы директивалармен басқарылады.

Препроцессор Препроцессор – сіздің бағдарламаңыздың мәтінін компиляторға дейін өңдейтін бағдарлама. Препроцессордың жұмысы
Препроцессордың көмегімен келесі операцияларды орындауға болады:
Бағдарламаға көрсетілген файлдардан мәтіндерді қосу;
Идентификаторларды таңбалардың жүйелілікпен ауыстыру;
Макроқойылым, яғни нақты аргументтерді ескеру арқылы қалыптасатын препроцессормен параметрленген мәтінмен белгілеуді ауыстыру;
Бағдарламадан мәтіннің кейбір бөліктерін алып тастау (шартты компиляция).

Слайд 7

Файлдарды қосу

Файлдарды қосу #include директивасы арқылы жүргізілуі мүмкін, оның келесі синтаксисі бар: 
#include

Файлдарды қосу Файлдарды қосу #include директивасы арқылы жүргізілуі мүмкін, оның келесі синтаксисі
<жол>
#include «жол"
Мұндағы бұрыштық жақшалар синтаксис элементі болып табылады.
 #include  директивасы файлдың құрамын қосады, оған жол директивасы бар тармақтың орнына компиляцияланған файлға берілген.
Егер жол бұрыштық жақшаларға алынған болса, онда файлды іздеу стандартты директорияларда жүзеге асырылады.
Егер жол тырнақшаларға алынған болса және толығымен берілген болса, онда файлды іздеу берілген диреткорияда жүзеге асырылады, ал егер жол берілмеген болса – ағымдағы директорияда жүзеге асырылады.
Осы директиваның көмегімен Сіз бағдарламаның мәтініне стандартты да, өзінің файлдарын да қосуға болады.

Слайд 8

Бағдарламаның параметрлері

 main функциясының, басқа бір функция сияқты парметрлері бар. Осы параметрлер бағдарламаға

Бағдарламаның параметрлері main функциясының, басқа бір функция сияқты парметрлері бар. Осы параметрлер
бұйрықтық (командалық) тармақтан беріледі.
void main(int argc, char *argv[])
{ ... }
// argc мен argv атаулары тілдің талабы болып табылмайды
Бірінші параметр массивте – екінші параметрде элементтер санын білдіреді, ол тармақтарға бағыттауыш массиві болып табылады.
Әрбір тармақ бағдарламаға берілген бір параметрді сақтайды, сондай-ақ бірінші параметр (индексі 0) орындалатын файлдың атауын қосады және әрқашан бар болады.

Слайд 9

Алфавит

C тілінің таңбалар жиынының құрамында бар:
Латын алфавитінің бас әріптері;
Латын алфавитінің кіші әріптері;
Араб

Алфавит C тілінің таңбалар жиынының құрамында бар: Латын алфавитінің бас әріптері; Латын
сандары;
бөлгіштер: , . ; : ? ! ' " | / \ ~ _ ^ ( ) { } [ ] < > # % & - = + *
 C++ тілі бас және кіші әріптерді айырады, name және Name  – әртүрлі идентификаторлар.

Слайд 10

Литералдар
C++ тіліндегі литералдар бүтін, заттық, символдық және тармақты болуы мүмкін.
Бүтін:
ондық: 10, 132, -32179;
сегіздік («0» символы

Литералдар C++ тіліндегі литералдар бүтін, заттық, символдық және тармақты болуы мүмкін. Бүтін:
алдында қойылады): 010, 0204, -076663;
оналтылық («0х» символдар алдында қойылады): 0хА, 0x84, 0x7db3.
Заттық : 15.75, 1.575e1, .75, -.125
Символдық: 'a', 'e', '.', '?', '2'.
Тармақты: «тармақ".

Слайд 11

C++ тілінің мәліметтер типі

C++ тілінің мәліметтер типі

Слайд 12

C++ тілінің мәліметтер типі

C++ тілінің мәліметтер типі

Слайд 13

C++ тілінде enum – атап өтілетін бар, ол бүтін типтің жиыншасы болып

C++ тілінде enum – атап өтілетін бар, ол бүтін типтің жиыншасы болып
табылады және void – бос тип, ол арнайы мәнге ие. Ол ешбір мәнді қайтармайтын функцияларды бейнелеуде және void типтің мәніне бағыттауыштарды бейнелеу үшін қолданылады. Осындай бағыттауыштар басқа бір типке бағыттауыштарға түрлендірілуі мүмкін.
С++ тілінде құрылымдарды және қосылыстарды бейнелеуге болады.
С++ тілінде символдар массиві болып табылатын массивтер мен тармақтар үшін арнайы типтері жоқ .

Слайд 14

Логикалық типтер

С тілінде логикалық типтер болмаған.
Логикалық мәндер бүтін типтің мәліметтері ретінде

Логикалық типтер С тілінде логикалық типтер болмаған. Логикалық мәндер бүтін типтің мәліметтері
білдіріледі, сондай-ақ 0 мәні жалған логикалық мәнге мәйкес болды, ал барлық басқа бүтін мәндер ақиқат логикалық мәнге сәйкес болды. Анықтама бойынша true  бүтін типке түрлендіру кезінде 1 деген мәнге ие, ал  false –0 деген мәнге ие.
Сондай-ақ, керісінше бүтіндерді айқын емес түрде логикалық мәндерге түрлендіруге болады: нөлдік емес бүтін true түрлендіреді, а нөл – false түрлендіреді. Логикалық мәндер қажет ететін әрбір жерде бүтінсанды өрнек тұруы мүмкін.
Арифметикалық және логикалық өрнектерде логикалық мәндер бүтінге түрленеді, операциялар түрлендірілген шамалардың үстінен орындалады.

Слайд 15

C++-тегі ең қарапайым бағдарлама мынадай болады: #include int main(void) { std::cout

C++-тегі ең қарапайым бағдарлама мынадай болады: #include int main(void) { std::cout Бағдарламаның
<< "Hello world"; return 0; }

Бағдарламаның бірінші тармағында #include директиваның көмегімен iostream басындағы (заголовочный) файлдың қосылуы орындалады.
Басындағы (Заголовочные) файлдардың құрамында осы файл қосылғаннан кейін өзінің бағдарламаларында пайдалануға болатын функциялар мен басқа дайын элементтердің сипаттамалары бар. iostream С++-тің стандартты библиотекасына кіреді, бірақ C++, басындағы (Заголовочные) файлдарды өздігінен құруға болады да, оған жиі қолданылатын функцияларды, шаблондар мен басқа дайындамаларды орналастыруға болады.

Слайд 16

 iostream басындағы (Заголовочные) файл ағындық енгізу мен шығару үшін дайын функциялар жиынтығын құрайды.

iostream басындағы (Заголовочные) файл ағындық енгізу мен шығару үшін дайын функциялар жиынтығын
Біз консольға шығару функциясын пайдаланамыз.
Бағдарламаның екінші тармағында main функциясын бейнелейміз. Функцияның атауының алдында – оның қайтарылатын мәндерінің типі, бұл жағдайда – ол  int (бүтін сандар). Атаудан кейін дөңгелек жақшамен функциялар параметрдің жиынтығы көрсетіледі, бұл жағдайда void сөзі параметрлердің жоқ болуын білдіреді. Void орнына дөңгелек жақшаларды бос қалтыруға болады.
Функцияларды сипаттау, яғни оларда орындалатын бұйрықтар тізімі фигуралық жақшалармен белгіленеді (олар блок операторы деп аталады).

Слайд 17

Бағдарламаның құрылымы

С++ тіліндегі бағдарлама  препроцессордың директивасынан, компиляторға нұсқаулардан,  ауыспалы және/немесе константаларды бейнелеуден

Бағдарламаның құрылымы С++ тіліндегі бағдарлама препроцессордың директивасынан, компиляторға нұсқаулардан, ауыспалы және/немесе константаларды
және функцияларды анықтаудан тұрады.
Айнымалыны бейнелеу айнымалының атауы мен атрибуттарын береді. Айнымалының атрибуттары ретінде тип, элементтер саны (массивтер үшін), жады классының спецификациясы және инициализатор бола алады . 
Инициализатор –айнымалыға, оның құрылуы кезінде мәнді беретін сәйкес константа.

Слайд 18

Константалар
С++ тілінде мәнді тікелей өзгертуге болмайтынын көрсету үшін пайдаланушымен анықталатын константалар концепциясы

Константалар С++ тілінде мәнді тікелей өзгертуге болмайтынын көрсету үшін пайдаланушымен анықталатын константалар
енгізілген.
Объектті константа деп жариялау үшін бейнелеуге const маңызды сөзді қосу керек. Константаға мәндерді қосуға рұқсаты болмағандықтан, ол инициализациялануы қажет.

Слайд 19

Функцияны бейнелеу және анықтау

Функцияны бейнелеу функцияның атауын, қайтарылатын мәндер типін және парметрлердің

Функцияны бейнелеу және анықтау Функцияны бейнелеу функцияның атауын, қайтарылатын мәндер типін және
саны мен типтерін береді, олар функцияларды шағырғанда болуы шарт.
void сөзін қайтарымды мән ретінде белгілеу функцияның мәндерді қайтармайтынын білдіреді.
Функцияның анықтауышы ретінде функцияны бейнелеу болып табылады, онда функцияның денесі бар. Функцияны анқтаудың мынадай синтаксисі бар: 
<типі> <атауы> (< формальді параметрлер тізімі>)
{
[<бейнелеу>]
[<операторлар>]
}