Дәріс кешені с/с++ тілдері

Дәріс №1. Программалау технологиялары туралы түсінік.
Дәріс №2. С/С++ ТІЛДЕРІНІҢ ЭЛЕМЕНТТЕРІ. ТҰРАҚТЫЛАР.
Дәріс №3. ЕНГІЗУ.ШЫҒАРУ МҮМКІНДІКТЕРІ
Дәріс №4. ОПЕРАТОРЛАР
Дәріс №5. БАСҚАРУ ИНСТРУКЦИЯЛАРЫ МЕН КОНСТРУКЦИЯЛАРЫ
Дәріс №6. МАССИВТЕР
Дәріс №7. ФУНКЦИЯЛАР. РЕКУРСИЯ
Дәріс №8. КӨРСЕТКІШТЕР
Дәріс №9. СТРУКТУРАЛАР
Дәріс №10. БІРІКТІРУ
Дәріс №11. ГРАФИКА
        
        ДӘРІС КЕШЕНІ
Дәріс №1. Программалау технологиялары туралы түсінік.
С/С++ тілдеріне кіріспе
Дәріс мақсаты: Программалау технологиялары ... ... С/С++ ... ... жүйелік программалық жабдықтарға арналған машиналық бағытталған тілдігін және осы тілдердегі программа құрылысын көрсету. Тілді меңгеруде назар аударуды ... ... ... ... ... сөздер: программалау технологиялары, программалық жабдықтарды өңдеу құралдары мен әдістері, С/С++ программалау тілі, программа, препроцессор директивасы, ... ... ... ... файлдар.
Жоспары:
1.1. Программалау тілдері. Программалау тілдерінің жіктемесі.
1.2. Программалау технологиялары.
1.3. С\С++ ... ... ... ... ... С\С++ ... ... мүмкіндіктері мен ерекшеліктеріне шолу
1.4. С/С++ тіліндегі программаның жалпы құрылысы. Препроцессор директивалары
1.1. Программалау тілдері. Программалау тілдерінің жіктемесі.
Қазіргі электрондық есептеуіш ... ... ... ... негізгі орын - программалау жүйелеріне тиесілі. Ал, программалау жүйелері - ... ... ... ... ... құрал. Олардың көмегімен есептеулер жүргізуге, мәтіндерді өңдеу, ... ... ... ... ... және ... т.б. әрекеттерді жүзеге асыруға болады.
Өз кезегінде бұл құралдардың өзі - ... ... ... ... ... ... ... қарқыны өте жылдам, қазіргі таңда программалау тілдерінің саны көп және жыл сайын жаңа бір тілдер пайда болуда.
Программалау тілдерінің даму ... ... ... - ... және процедуралық емес деп бөлуге болады.
Процедуралық программалау есептеуіш техникаларының даму кезеңінен ... ... және әлі кең ... Және ... ... программа орындауға тиісті әрекеттерді сипаттайды, әрекеттерге сәйкес ... ... бір ... көмегімен алынады. Олай болса, процедуралық программалау алгоритмдік ойлау ... ... ... ойлау қабілетін дамыту құралы ретінде қолданыла алады. Процедуралық тілдердің ішінде структуралық тілдерді айрықша атауға болады.
Структуралық тілдерде бір ... ... ... бір алгоритмдік құрылым жазылатынын белгілі. Алгоритмдік құрылымдар: ілесу, тармақ, циклдар екені бәрімізге аян. Ал, операциялық тілдерде мұны ... ... амал ... ... етеді. Структуралық тілдер Pascal, C/C++ .
Процедуралық емес программалауға функциональдық және логикалық тілдер жататыны мәлім. ... ... ... ... да бір ... ... ... Және ол функция басқа қарапайым функциялар композициясы ретінде анықталады. Функциональдық тілдердегі кең тараған ... - ... ... ... Меншіктеу және циклдар классикалық функциональдық тілдерде жоқ. Кең тарағаны - Лисп тілі.
Функционалдық және процедуралық тілдердің құралдарынан ... тіл - ... ... ... ... ... ... береді және олардың арасындағы сәйкестілік орнатылады, яғни машина программада анықталған мәліметтерді терімдеп(перебор) сәйкестілікті анықтайды. Мысал ретінде Пролог тілі ... ... онда да ... ... ... Сол секілді кең құлаш жайып жатқан тілдер - объектілі - ... ... ... ... да процедуралық программалау элементтері болғанымен, мұнда есепті шешудегі әрекеттердің айқын тізбегі ... ... ... ... ... екі ... және бар.
технологиясыныңмағынасы: алдымен етене таныс және ... ... ... ... ... ... өңдеу, мәліметтерді енгізу) мәселелер орындалады да сосын барып үлкен, күрделі прорамманы дайын бөлшектерден ... ... ... ... алдымен программа скелеті дайындалып (процедуралар мен олардың ... ... ... да ... кейін жеке бөлшектерін жазуға кіріседі.
Көбінесе программа аталған екі технологияны аралас қолдану арқылы құрылады.
Программалар жиі нашар құрылымдарға ие ... ... ... ... көрінісі орындалатын жұмысқа сәйкес болмағандықтан, олармен жұмыс істеу қиын.
Мәліметтердің жақсартылған құрылымын таңдау, үйрене алмайтын өзінің ... ... ... табылады. Шешімдер процесі жеңілірек болу үшін және мәліметтер құрылымында қандай өзгерістер басқаруды қысқартуға көмектесетінін анықтау үшін алдын-ала программаның ... ... ... жиі жазып отыруға тура келеді.
Көптеген программалар, оларды түгелдей қабылдау үшін өте қолайсыз болып келеді. Жеке-жеке меңгеру үшін, оларды бөліктерге бөлу ... Бұл ... ... ... ... жолы, сондай-ақ оқу мен түсінудің жалғыз тәсілі.
Функция мен процедуралар үлкен ... ... ... ... ... ... ... тілдерде ол жеке түрде трансляциялануы және бір-бірінен тәуелсіз ... ... ... модульдер, егер олар өте көп санды немесе тым әртүрлі функцияларды орындайтын болса кең түрде ... үшін өте ... ... және ... қиын.
Қайда және не орындалу керектігін анықтайтын, программаны ұйымдастыру жеткіліксіз мәліметтерді ... және ... ... мен ... талдау салдары болып табылады.
Үлкен көлемдегі есептерді кіші ... ... бөлу ... деп аталады. Осы пәннің шеңберінде:
- Жазу мен үлкен программаларды сүйемелдеудің жалғыз тәсілі - оларды модуль ... ... ... функциялардың жиынтығы ретінде көрсету;
- Модульде ақпарат, ол өзінің есебін қалай шешетіндей жұмыс істемеуі керек;
- Әр ... ... ... ... шағын тобымен ғана өзара әрекеттесуі қажет;
- Программаның құрамында өнделген мәліметтердің бейнесі табылуы керек.
1.3. С\С++ программалау тілдерінің тарихына ... ... тілі ... ... ... бұл ... ... мен операциялық жүйелерді жазуға және қолданбалы программаларды жазуға қолданылады. Мысалы, Нью - ... ... ... Хилл ... Bell ... ... ұйымдастыруымен 1969 жылы UNIX - операциялық жүйесі жазылды, бұл жүйе PDP-7 компьютеріне орнатылған. С тілінің ... ... ... BCPL тілінен алынған.
Жалпы Си тілінің шығу тарихына тоқталайық:
Ең алдымен 1960 жылы Аlgol тілі ... ... ... ... CPL- (біріктірілген програмамлау тілі) 1963 жылы жазылған. Осы тілдер негізінде іргелендіру арқылы Мартин Ричардс ВCPL(базалық біріккен программалау тілі) тілін 1967 жылы ... ... ... 1970 жылы Кен ... В тілін ойластырған. Алғашқы Си тілі 1972 жылы Bell laboratiories лабораториясында жазылған және оның ... - ... ... 1983 жылы ... ... стандарттау институты) институты Си тілін стандарттау мақсатын қойды. Себебі, Кен ... В ... ... бітіргенде PDP - 11 компьютері пайда болған. Сондықтан UNIX операциялық жүйесін және В тілінің компиляторын жаңа ... ... ... Бұл PDP-11 компьютерінің оперативті жадысының көлемі -24 Кб, мұның 16 Кб орыны операциялық жүйеге қолданылған. ... ... ... орыны - 512 Кб болған. UNІX - ті В ... ... жазу ... туындаған. Бірақ, В тілі жәй жұмыс жасаған және В сөздермен жұмыс жасауға бағытталған. Жалпы BCPL және В ... - ... ... ... В ... өзін ... ... туындаған. Ізінше 1971 жылы жаңа версиясын - Си тілін жаза бастаған. Деннис Ритчи тілдің нақты бір құрылғыдан ... ... ... ... (C, Рascal, Lisp u APL) жеке авторлар құрастырғандықтан біртұтастығымен ерекшеленеді, және көпшілік авторлар жазған (Ada, PL/1 u Algol60) тілдеріне қарағанда бір ... ... ... ... ... мамандандырылған сипатта құрылады.
Деннис Ритчи жүйелік програмалау саласында мойындалған ең ірі маман саналады.
С\С++ программалау тілдерінің мүмкіндіктері мен ерекшеліктеріне шолу ... ... ... Си ... ... ... салыстырмалы түрде тіл, сондықтан алгоритм жұмысының әрбір ... ... ... бар және ... ... ... принцптері енгізілгендіктен, нақты бір компьютердің архитиктурасы ерекшелітерінен тәуелсіздігін қамтамасыз ету мүмкін болды.
Жоғарғы ... ... Си ... ... операторлар түрі өзгеше;
- көрсеткіштер жиі қолданылады;
- басқа тілдерге ... ... ... аз, ... ... ... жұмыс жасау үшін 256 Кб оперативті жады жеткілікті;
- қызметші ... ... ... мен олардың комбинациялары көп;
- алғашқыда Си тілінде 27 қызметші сөз ғана болған. Кейін ANSI Си ... және ... C ... ... сөз ... ... саны шамамен 50;
- Көп программалау тілдерінде бар ... Си ... ... Си ... қосалқы енгізу шығару функциялары, математикалық функциялары және жолдармен жұмыс жасау функциялары жоқ, бірақ сол функциялардан және басқа функциялардан ... жеке ... алу ... ... ... ... ... жеңіл, яғни программаның бір жерінде айнымалыны символ түрінде , екінші бір жерінде осы символдың ASCII коды ретінде қарастыруға болады;
- Си ... ... ... ... барлық басқарушы конструкциялары бар(For, if / else,....);
- Cи тілінде модулдік программалауға болады, яғни ... ... ... жеке ... болады;
- Ассемблер тілінде жазылған ішкі программаларды шақыруға болады;
- көрсеткіштер яғни жады аймақтарынан ... ... ... ... ... ... ... арттырады. Көрсеткіштер көп тілде қолданылады, ал көрсеткіштерге арифметикалық амалдар тек Си тілінде ... Си ... ... массивтер бір өлшемді, бірақ Си тілінде бір өлшемді массивтерден тұратын ... бар, яғни көп ... ... ... тек ... кітапханалар шақырылатын болғандықтан жады тиімді қолданылады;
- басқа тілдердегідей қосалқы функциялар;
- көптеген мамандандырылған ... ... ... ... Си ... ... типі қатаң қадағаланбайды, сондықтан Си тілінде тәжірибелі программист ... жаңа ... ... ... ... ... болуы мүмкін.
Мысалы, бір өрнекте (=) меншіктеу операторы бірнеше рет қолданылуы мүмкін. ... ... типі ... және қиын ... Бірақ оны қолдану арқылы тілдің қуаты арттырылған.
С++ тілі Си тілінің ... яғни ... ... ... ... толықтырылған жиыны деуге болады.
Си және С++ тілдерінің ... мен ... ... мәләметтер типтерінің аттары болып табылады. С- де класс түсінігі жоқ.
С/С++ тіліндегі ... ... ... тіліндегі кез-келген программа main функциясынан тұрады. Мұның орындалу барысында басқа функциялар шақырылады. Функциялар арасындағы байланыс параметрлер ... ... ... ... қайтарып алу арқылы жүзеге асады.
Сонымен қатар, Си тілінің компиляторында мәселені бірнеше бөлікке -файлдарға бөліп, әрқайсысын жеке-жеке трансляциялап, сосын ... жеке бір ... ... ... ... бар. Жинақтау байланыс редакторының көмегімен жүзеге асырылады.
Программа құрылымы:
Кез-келген программа комментарийден басталады. Комментарийді Си тілінде , ... ... ... блок түрінде беруге болады.
Содан кейін препроцессор дерективасы орналасады. Препроцессор директивасы берілгенде кітапханалық файлда - тақырыптық файлда орналасқан кодты программаға қою ... ... ... .h ... ... ... файлдар деп аталады. Тақырыптық файлдарда әртүрлі тұрақты мен ... ... ... ... ... ... кейін main функциясы сипатталған бөлігі орналасады.
Main функциясы ... ... ... ... ... ... одан ... орындалуы басталып, Return инструкциясы шақырылғанда аяқталады.
Main функциясының денесі фигуралық жақшада орналасады.
Си тілінде барлық айнымалы оған программаның қандайда бір бөлігінен ... ... ... ... ... ... Си тілінде жазылған программа текстінде кездесетін инструкциялар (нұсқаулар) препроцессор директивасы (ПД) деп аталады. Олар ... ... ... орындалады және программаның текстін өзгертуге мүмкіндік береді. Мысалы текстегі кейбір лексемдерді өзгерту, басқа файлдан мәтінді ... ... ... да бір бөлігін орындауға, трансляциялауға шектеу қою т.б. Барлық препроцессор директивасы таңбасымен басталады және ... ... үтір (;) ... #include директивасы.
Бұл программаға көрсетілген файлдағы мәліметтерді қосады. Бұл директиваның екі формасы бар:
#include "файл аты"
# include
Мұндағы, операциялық жүйелер талабына сай ... яғни тек файл ... ... оның ... ... ... тұруы мүмкін. Егер тырнақшада берілсе, онда файл ... ... ... ... ... ал ол ... жұмысшы каталогтан ізделеді. Егер файл аты бұрыштама жақшада (< >) берілсе, онда файл ... ... PATH ... ... ... ... ... ізделеді. #include директивасы іштестірілген болуы мүмкін, яғни қосылатын файлда тағы кездесуі мүмкін. ... бұл ... ... ... қосу үшін қолданады, яғни стандартты кітапханалық функциялар прототиптерінен тұратын файлдарды қосуға мүмкіндік береді. Сондықтан С тіліндегі программа осы директивадан ... #define ... - ... жиі ... ... қызметші сөздерді, операторларды және өрнектерді кейбір идентификаторлармен ауыстыруға мүмкіндік береді. Сандық немесе текстік тұрақтыларды ауыстыратын идентификаторларды ... ... ... ... деп ... ... алмастыратын идентификаторларды (макроопределения) макроанықтамалар деп атайды.
#define екі формасы бар:
- #define
- #define ... ... ... #define WIDTH ... LENGTH (WIDTH+10)
бұл директивалар программа текстіндегі әрбір WIDTH сөзін 80 санына, ал LENGTH сөзін (80+10) өрісіне ... ... ... ... ... ретін анықтауға мүмкіндік береді. Мысалы, жақша болмаса мына өрнек: t=length+7 мынадай t=80+10*7 ... ... ал ... ... ... сондықтан жақша қойған дұрыс.
2-ші формасында формалды параметрлер тізімі ... ... ... үтір ... ... ... және ... текстіндегі алатын позициясын анықтайды.
Шақырғанда идентификатордан кейін формалды параметрлер санына ... ... ... көрсетілуі тиіс.
Мысалы,
#define MAX(x,y) ((x)>(y))?(x):(y)
Бұл директива t=MAX(i,s[i]); фрагментін t=((i)>(s[i])?(i):(s[i]); ... ... #undef - ... ... #define ... қызметін қайтаруға қолданылады. Яғни, көрсетілген идентификаторларға қолданылатын #define анықтамасы қызметін ... ... ... ... WIDTH атаулы тұрақтысымен MAX макроанықтамасын болдырмайды.
Тақырыптық файлдар атаулары төмендегідей:
assert.h, float.h, math.h, ctype.h,
limits.h, setjmp.h, errno.h, locale.h,
signal.h, ... ... ... ... ... тақырыптық файлдар мазмұны Стандартты кітапханалар ретінде жеке қарастырылыды, сәйкес бөлімді қараңыз.
Дәріс №2. С/С++ ТІЛДЕРІНІҢ ЭЛЕМЕНТТЕРІ. ТҰРАҚТЫЛАР.
АЙНЫМАЛЫЛАР. ... ... Си ... негізгі элементтері: литерлер, символдары,
тұрақтылар, айнымалылар, типтері т.б. таныстыру.
Кілттік сөздер: литерлер, идентификаторлар, тип, стрингтік тұрақты,
кфалификаторлар, тұрақты ... ... ... элементтері
2.2. С/С++ тіліндегі типтер.
2.3. Тұрақтылар.
2.4. Глобалды және локалды айнымалылар.
39
2.1. Тілдің элементтері
Символдар:
- латын әріптері;
- цифрлар;
- арнайы символдар;
- пробелмен ажыратылмаған ... ... бір ... ... ... ... ++, - - , , += , /- , //.
Идентификаторлар:
Идентификаторлар - символдардан, цифрлардан және таңбасынан ... ... 31 ... ... С және С++ тілдері символдар регистріне
қарайды, яғни компилятор үлкен және кіші символдарды әртүрлі символ ретінде
қабылдайды.
Мысалы, Name_TYPE және ... ... ... ... ... ... келісім бойынша кезкелген
идентификаторды сәйкес типінің бірінші әрпінен бастау ұйғарылған.
Қызметші сөздері:
С тіліндегі қызметші сөздер ... ... ... ... ... ... бір ... орындайды. Қызметші сөздер мағнасын өзгерту
мүмкін емес, тек, #define препроцессор директивасы арқылықызметші сөз
псевдонимін құрып, оның әрекетін көшіруге болады.
2.2. С/С++ ... ... ... С++ ... мәндер төмендегідей базалық типтер бірімен
бейнеленеді. Олар:
1. char - бірлік байт, қолданылатын литерлер жиынтығындағы бір литерді
меншітей алады.
2. int - ... float - 3.4E- 38 және 3.4E+38 ... ... ... double - 1.7E-308 - 1.7E+308 ... ... нүктелі сандар.
5. Void типті, ешқандай мән қайтармайтын функцияларды қолданылады.
6. bool типті айнымалы С++-те true ... false ... ... Санылымды тип.
8. Көрсеткіштер.
Саналымды типті айнымалы санап көрсетілген тұрақтыға оның атауы
арқылы сілтейді.
С/С++ тілі машинадан тәуелді тіл болғандықтан аталған типтерге ... ... ... ... атап ... ... шамамен сипаттау
мүмкіндігі бар.
Сонымен қатар, базалық типтерге қолданылатын бірнеше квалификаторлар бар.
Квалификаторлар
short (қысқа) және long ... ... ... типтерге қолданылады:
Short int sh;
40
Long int counter;
Бұндай сипаттауларда int сөзін жазбауға болады. Көбінесе short квалификаторы
арқылы сипатталған бүтінге 16 бит ... long ... ... - ... ал int ... - не 16, не 32 бит ... (таңбалы) және unsigned (таңбасыз) квалификаторларын char типіне
және кез келген бүтін типке қолдануға болады.
Unsigned мәні әрқашан оң немесе нөлге тең және 2n ... ... ... ... ... n- ... бейнелегендегі биттер санына тең.
Мысалы, char мәніне 8 бит бөлінсе, онда unsigned char 0-ден 255-ке дейінгі
диапазондағы мәнге, ал signed char ... 127-ге ... ... ... ... ... тұрақтылар және стандартты
тақырыптық файлдарында орналасады.
Сонымен қатар, С ... екі ... бар: Const және ... - мәні ... ... ал Volatile кез ... уақытта мәні
өзгеретін айнымалыларды белгілеу үшін қолданылады.
Const -программа орындалу барысында ... ... - ... ... Const float ... int imin=1, ... сипаттаудың екі тәсілін білеміз, Const және define; көпшілік
жағдайда екеуі бірдей ... ... ... ... ерекшеліктері бар: define -
макротұрақты, ал Const арқылы айнымалы құрылады.
Volatile бұл айнымалының мәні сыртқы әрекеттер әсерінен өзгеруі мүмкін
екенін білдіреді.
Мысалы, Volatile int ... ... EV_time ... ... яғни ... ... ... бұл квалификаторлар бір уақытта қолданылуы мүмкін, мысалы, Const
Volatile Const EV_time;
Мұнда Const EV_time айнымалысының мәні программасының ... оның мәні ... ... мүмкін.
2.3. Тұрақтылар
Программаның орындалу барысында мәні өзгермейтін шама - тұрақты деп
аталады.
Бүтін тұрақты, мысалы, 1234, int ... ... Long ... ... l
немесе L әрпімен аяқталады. Мысалы, 123456789L. Таңбасыз тұрақтылар u немесе U
әрпімен аяқталады. Ал ul ... ... ... ... типі - unsigned ... ... қатар, бүтін мән ондық форматта немесе басқа 8-дік немесе 16-лық
форматта берілуі мүмкін. Егер тұрақты нөлден басталса, онда ол 8-дік ......... онда ... ... ... Мысалы, ондық бүтін
31-ді 037 немесе 0Х1F түрінде жазуға болады. 8-дік және 16-лық тұрақтылардың
жазылуы L және U әрпімен аяқталуы мүмкін.
41
Мысалы, 0XFUL ... 15 ... және unsigned long ... ... ... тұрақтылар. Егер тұрақты f немесе F әрпімен аяқталса,
онда тип float, ал l немесе L болса, онда long double ... ... ... ... ... деп ... алынған литер
түрінде жазылған бүтінде айтамыз.
Мысалы, 'x'. Литерлік тұрақтының мәні ... ... ... коды ... '0' ... ... ASCII кодында 48 кодына сәйкес келеді. Бұның 0
мәніне ешқандай қатысы жоқ. Литерлік тұрақтылар көбінесе басқа литерлермен
салыстыру үшін қолданғанымен, олар ... ... ... ... ... ... ... алады.
Тұрақты өрнек - тек тұрақтылармен ғана өрнектелетін өрнек.
Мұндай өрнектер компиляциялау барысында есептеледі, сондықтан оларды
келген жерде қолдануға болады.
Мысалы:
#define SAN 368
char line[SAN ... ... - нөл ... қос ... ... ... Мысалы,
" Бұл жолдық тұрақты"
немесе " " /* бос жол */
Тырнақшалар жолдарға кірмейді, ол тек оның шектеуі ретінде қолданылады.
Жолдық тұрақтыларды ... ... ... ... ... ... оларды бөлек жолдарға жазуға мүмкіндік береді.
Шын мәнінде жолдық тұрақты ол ... ... ... s ... ... ... strlen: s жолының ұзындығын қайтаратын функция мазмұны */
int strlen(char s[ ] ) ... ... ( ... ... қолданылатын strlen және басқа функциялар стандартты
тақырыптық ... ... - ... ... ішкі ... ... ... соңына қойылады.
Ескерту: бір литерден тұратын литерлік тұрақты мен жол бірдей емес.
Саналымды тұрақты. Санау -ол бүтін тұрақтылар тізімі.
Мысалы,
Enumeration - ... ... ... ... ... boolean{ NO, YES};
Enum months { JAN = 1, FEB, MAR, APR, MAY, JUN, JUL,
AUG, SEP, OCT, NOV, DEC }; /* FEB 2, MAR 3 ... ... ... ... әртүрлі болуы тиіс. Бір саналым ішінде мәндер
қайталануы мүмкін. Enum құралы тұрақтыларға ыңғайлы аттау беруге мүмкіндік
береді, #define ... ... ... ... ... ... береді.
2.4. Глобалды және жергілікті айнымалылар
Айнымалылар. Программаланың орындалу барысында мәні өзгеретін
шамалар айнымалылар деп ... ... кез ... ... оны ... ... ... керек.
Декларацияда айнымалылардың қасиеттері хабарланады. Ол типтің атынан және
айнымалылар тізбегінен ... ... ... int типі көрсетілген айнымалылардың мәні бүтін екенін білдіреді, ал,
float бөлшек бөлігі бар мәндер.
Бақылау сұрақтары:
1. С/С++ тілдеріндегі ... ... нені ... Типтеріне жадыдан бөлінетін орын мөлшерін нақты атауға бола ма?
3. Идентификаторларды неше символға ... ... ... ... мен ... ... ... неде?
Әдебиеттер:[1-2], [5-10], [16-17].
Дәріс №3. ЕНГІЗУ-ШЫҒАРУ МҮМКІНДІКТЕРІ
Дәріс мақсаты: С/С++ тілдерінің енгізу-шығару мүмкіндіктерімен таныстыру.
Жиі ... ... ... ... және ... ... бөле ... қалған мүмкіндіктерін зерттеуге бағыттау.
Кілттік сөздер: енгізу, шығару, енгізу-шығару форматы, функциялар, лектер,
буферлік лектер, лектік класс, басқару символдары, формат спецификаторлары,
флагтар.
Жоспары:
3.1. С тіліндегі ... ... С++ ... ... ... С тілінде форматтап енгізу және шығару
3.4. С++-тегі форматтау функциялары мен ... С ... ... ... ... ... ... мәліметтерді енгізу-шығару тәсілі бар.
43
Енгізу-шығару стандартты кітапханалық функциялар файлдармен және
әртүрлі құрылғылармен байланысқан ... ... ... ... ... ... файлдың қандай да бір алдын-ала анықталған структурасы жоқ. Кез-
келген мәлімет байттар тізбегі түрінде қарастырылады.
Жалпы енгізу-шығару ... ... үш ... бөлуге болады:
- Лектік(потоктық);
- консолдық (консольные);
- төмен деңгейлі (низкоуровневые).
Лектік функциялар: буферлік, форматталған, форматсыз енгізу-шығару
мүмкіншілігін жүзеге ... ... ... ... жазу-оқу барысында буферде
сақтау мүмкіндігі бар. Дискке тікелей жазу ... ... ал ... аймақты
пайдалану процесті тездетеді.
Лектік функциялар мәліметтерді символдар легі түрінде қабылдайды.
Лектік файлдар ... ... бір ... және ... ... алмасуға болады.
Файлды ашқанда лектік функцияны пайдаланып файлмен FILE ... ... ... ... да ... сәйкесінше осы
структураға сілтемені алады, ол лек көрсеткіші немесе лек деп аталады.
● Сонымен қатар консоль ... порт ... ... орындалады
(мысалы, принтер порты арқылы).
Бұл жағдайда сәйкес функциялары ... ... ... жұмыс жасау қосымша мүмкіндіктер береді. Бұлар мынадай
қосымша мүмкіндіктерді орындайды:
- символдық клавиатурадан енгізілген кезеңін анықтау;
енгізілген символдар ЭХО ... ... ... ... ... ... ... т.б.
● Төмен деңгейлі категория функциялары тікелей жүйелік енгізу-шығару
құралдарын пайдаланады, яғни төмен деңгейде файлға немесе периферийлік
құрылғыларға жол ашады. Төменгі деңгейлі ... ... файл ... ... - бүтін сан қайтарылады да, ол ... файл ... ... ... ... мен ... ... функцияларды бір программада
араластыру арқылы конфликт пайда болады.
Лектік функциялар.
стандартты кітапханасында лектік ... ... ... ... ... 5 ... лек ашылады. Лектер:
- енгізу (stdin);
- қателер (stderr);
- шығару (stdout);
- ... ... ... ... құрылғылар (stdoux).
Автоматты түрде қате, енгізу, шығару стандартты легі консольмен
байланысады. ... ... ... ... болатын функцияларда
44
жоғарыдағы көрсеткіштердің бірін таңдап көрсету керек. Stdin, stderr, stdout, ... ... ( ), putc ( ) - ... ( ) ... ... ... 1 символды оқиды.
Жалпы форматы: int getc ( );
Бұл ... ... ... ... кодын қайтарады.
getc ( ) функциясы лектен жаңа жол символы кездескенге дейін оқиды.
Мысалы, клавиатурадан Enter басу ... ғана ... ... ( ) - ... лекке жазады.
Мысалы, int ix;
Ix=getc (stdin);
putc (ix, stddut);
putc() функциясы қате жіберілгенде EOF қайтарады. putc, getc функциялары
функция және макрос түрінде де ... ... ... ... ... үшін, яғни макросты болдырмау үшін:
# undef getc препроцессор директивасысы берілу керек.
Бүтін сандарды енгізу
Бүтін сандардың легін (буферлік) енгізіп-шығару ... getw ( ), putw ( ... getc ( ), putc ( ) ... секілді, тек бүтін сандарды оқиды және тек
файлдардан (екілік режимде ашылған) оқиды.
3.2. С++ тіліне тәні енгізу-шығару құралдары
С++ тілінде С тіліндегі стандарт ... ... ... ... С++ ... ... ... анықталған
енгізу-шығару құралдары бар. Лектік енгізу-шығару осы тақырыптық файлдағы
кластар арқылы орындалады.
Мына ... >> - ... және > ... ... С ... ... арнайы форматтар мен типтері анық көрсетілу
арқылы орындалса, С++ тілінде > - операторы қабылданатын мәннің адресін, ... ...

Пән: Информатика
Жұмыс түрі: Материал
Көлемі: 102 бет
Бұл жұмыстың бағасы: 500 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
PHP тілі13 бет
Жұмабаев Мағжан Бекенұлы11 бет
Мағжан Жұмабаев, Мағжанның өлеңдері4 бет
Мағжан Жұмабаевтың өмір жолы4 бет
Мәскеуде жүр бір қазақ туған елдің тынысын кеңейтем деп2 бет
Мәшһүр Жүсіп Көпеев9 бет
Сұлтанмахмұт Торайғыров4 бет
Торайғыров сұлтанмахмұт4 бет
Қазақ және орыс тілдеріндегі флексия, аффиксоидтер және интерфикстер7 бет
Әл-Фараби және Ақжан Машани (Қасым Аманжолов порталынан)14 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь