Си тіліндегі мәліметтер типі
МАЗМҰНЫ
Кіріспе
Процесті жеңілдету үшін көптеген программалау тілдері жасалған. Олардың өзіндік күшті және әлсіз жақтары бар, олар белгілі бір есептерді шешуге бағытталған.
Барлық программалау құралдарын екі басты категорияларға бөлуге болады:
- төмен деңгейдегі программалау тілі;
- жоғарғы деңгейдегі программалау тілі.
Бірінші
топқа Ассамблер тілдерін жатады
(мысалы Turbo Assembler, Marco Assembler). Бұл программалық
қамсыздандыру құралдары
Қазіргі кездегі программалау тілінің арасында ең көп тараған тілдердің бірі Си универсалды программалау тілі. Бірақ оны жүйелік программаларда, транслятор, операциялық жүйелерді жазуда қолдану жақсы жетістіктер береді. Си программалау тілін 1972 жылы Bell laboratories фирмасының қызметкері Денис Ритчи ойлап тапты. Тіл системалық программаларға арналған деп саналғанымен оның мүмкіндігінің өте үлкен болғандықтан оны қолданады, программаларды жазуға да пайдалануға болады. Си тілінде жазылған программаның архитиктуралары әр түрлі компьютерлердің бірінен бірін ауыстыруға бір операциялық жүйеден екінші операциялық жүйеге ауыстыруға жеңіл. Сонымен қатар Си тіліндегі программалардың орындалу жылдамдығы ассемблер тіліндегі программалардан кем емес. Си тілінің компиляторы қазіргі кездегі барлық операциялық жүйеде жұмыс істей береді. Unix, MSDOS, WINDOWS.
Менің
курстық жұмысым мекеменің
1 С++ тілі
1.1 Тілдің алфавиті
Латын алфавитінің әріптері.
1.А,В…Z,a,b,c…z;
2.0…9;
3.”, , {}, (), [],
+,-,/,%,\,,’,.,:,<=,>=,>,<,=,-
4. Өрнектеуге болмайтын символдар: бос орын: табуляция, жаңа жолға көшу.
5. Коментария
жазу үшін орыс альфавиті
Идентификаторлар. Тілдің ең негізгі түсіністерінің бірі- идентификатор. Ол объектінің атауы ретінде қолданылады. (функцияның, айнымалының, константалардың)
Идентифатор төмендегі ережеге сай таңдалуы қажет:
- Олар латын әріптерінің х немесе астын сызу басталуы қажет .
- Оның ішінде латын әрпі және астын сызу белгілері қолданылуы мүмкін. Бөтен таңбаларды қолдануға болмайды.
- Си тілінде кіші және үлкен латын әріптері өзгеше деп саналады.
- Идентификатордың ұзындығы әр программаның жүйесінде әр түрлі ANSI стандарты бойынша 32 таңбадан аспауы керек . Си ++ те шектеуі жоқ.
- Объектілердің идентификаторы тілдің, түйінді сөздерінің стандартты функциядан және библиотека аттарынан өзгеше болуы қажет.
Си программалау
тілінде түсініктемеге көп
1.2 Мәліметтер түрлері.(Типы данных)
Программалар әр түрлі мәліметтермен жұмыс істейді. Олар қарапайым мәліметтерге бүтін және нақты сандар объектінің жадыдағы адрестерінің көрсеткіштері жатады.
Реттестірген мәліметтерге массивтер, файлдар жатады. Тілде «мәлімет түрі» және түрдің модификаторы. Екі ұғым бар мәлімет түрі мысалы бұл бүтін сан ал модификатор бар немесе таңбалары жоқ дегенді білдіреді. Таңбалары бар бүтін сан оғ және теріс сан қабылдай алады, ал таңбасы жоқ сан тек қана оң сан қабылдай алады. Си тілінде 5 базалық түрі бар:
- Char-символдық.
- Int-бүтін сан.
- Float-нақты сан.
- Double-ұзын нақты сан.
- Viod-мәні жоқ.
- Char типті айнымалының өлшемі бір байт, оның мәндері әртүрлі символдар ‘f’, ‘a’, ‘k’, ‘,’ программада оларды апострафқа алып жазу керек.
- Си тілінде бүтін айнымалының өлшемі бір машиналық сөзге тең.-32768-+32767.
- Float түйінді сөзі нақты сандардан айнымалыда анықтауға қолданылады. 5,6,31,33,-2.01. Нақты санды 3 көшпелі нүкте арқылы да жазуға болады. 54000®54 × 10 =54E 3 5.4 ®54E-1®0.54E1.E таңбасы алдында тұрған санды маркиса, ал Е деп тұрған санды көрсеткіш деп аталады. Float айнымалысына 32 бит беріледі.3.4У-387-3. 4Е+38.
- Double-түйінді сөзі 2 еселенетін дәлдікпен берілген нақты сандарды анықтайды. Ол ЭВМ жадында 64 бит орын алады. 1,7 Е-308-1-1,7У-308.
- Viod-түйінді сөзі объетінің мәнін бейтарап етіп қалдыру үшін (нейтрализовать). Ешқандай мәнді әкелмейтін функцияны хабарлау үшін қолданылады. Кейбір базалық типтердің объектісі өзгертілуі мүмкін. Ол үшін арнайы түйінді сөз модификатор деп аталады. ANSI стандарты бюойынша мынадай модификатор бар Unsigned, Signed, shott, long. модификаторлар спецификаторлардың алдында жазылады. Мысалы: Unsigned char.Егер модификатордан соң спецификатор жазылмаса, онда Си компиляторы оны бүтін деп түсіндіреді. Мысалы long a, long int a, екеуі де бір мағына береді.
1.3 Айнымалылармен мен константалар
Программада қолданылатын барлық айнымалылар оларды пайдалануға дейін хабарлануы тиіс.
Хабарлау-объектің қасиеттерін көрсетеді. Мыс: типі бүтін сан,размері 4 байт хабарлау оған ЭВМ жадыларына орын дайындау үшін қажет Айнымалыларды бірнеше қатарға жазуға болады. Айнымалыларға оларды хабарлау кезінде мән беруге де болады.
int a=5,b=47;
char x=’b’;
char
Си тілінде жалпы глобальные және жеке локальные объектілер болуы мүмкін.
Глобальные-функциясынан тыс анықталады. Сондықтан кез-келген функция үшін жұмыс.
Локальные-функцияның ішінде қолданылады.
Int a/*-Жалпы айнымалыны анықтау.*/
int function (int b, char c)-/*Функцияны хабарлау.*/
{ /*программа денесі.*/
int d,l; //жеке айнымалыларды сипаттау.
float.f
int function(int b,char
c)/*-функцияны және оның
{ /*функция денесі.*/
char g;
}
Программа main() функциясын шақырудан басталады. Ол программа денесі. Ал программа денесі {} арасында жазылады. Функция денесі де аралығында жазылады.
Константалар.
1.Нақты сандар-123.456,5.6Е-4.Олар функциясы түрінде жазылады: 123.456 5.6Е-4 .
2. Бүтін сандар 125.
3. Қысқа бүтін сандар - олардың соңында Н немесе әрпі жазылады. 275Н,275n.
4. Ұзын бүтін сандар – олрадың соңында немесе әріптері жазылады. 361327L ,247499l.
5. Таңбасыз - олрадың соңында және әріптері жазылады. 361327U,361327u .
6. Сегіздік сандар – олрадың алдында әрпі жазылады.
7. Ол алтылық санау жүйесіндегі сандар – олардың алдында ОХ және Ох жазылады. Ох 57.
8. Символдық – апостровқа алынатын жалғыз символ 0,2.
9. Қатарлық (строк) – тырнақшаға алынған символдар тізбегі «бұл қатарлық константа».
10. Константалық өрнек – а 60+301.
1.4 Мәліметтерді енгізу және шығару
СИ де мәліметтерді енгізу – шығару билиотека функциялары арқылы ұйымдастырылады. Ең қарапайым енгізу механизмі detchar( ) функция арқылы бір символды оқу. Ол былай жазылады: int detchar(void).
Бұл жерде
аргумент типі, ал функцияның
мәні бүтін болады.
Операторлар.
x=detchar( )
x айнымалысына келесі енгізілетін символды меншіктейді. Ол бүтін немесе символдық болу мүмкін.
2)putchar(x); х-айнымалының мәндерін шығарады detchar(x); және puts хабарлаулары stdio.h атты библиотека функциялары да бар фаилда жазылған. Библиотекалық программаларды библиотекаларда қолдану үшін stdio.h фаилды іске қосу керек. Ол препроцессорлардың мынадай дерективасы арқылы #include<stdio.h>.
Программалардың
басында detchar( ) функциясы үшін символды
енгізілгеннен кейін Enter клавишін басу
қажет,ал detche ( ) және detch( ) функциялары
. Ол режимді, алып тастайды. Enter-ді баспауға
болады.
Екеуінің айырмашылығы енгізілген символдарды экранда көрсетеді. Ал detch - көрсетпейді.
1.5 Мәліметтерді формат бойынша шығару.
Файл ішінде f функциясы мәліметтерді форматтап шығаруды, іске асырады.
Форматы: <stdio.h> (“басқару жолы”, аргумент 1, аргумент 2, …,)
Басқару жолы – үш тип компанентінен тұрады.
- Кәдімгі символдар.
- Түрлендіретін символдар.
- Басқару константалары.
Түрлендіру спецификациялары % белгісінен басталады да
түрлендір символыменен бітеді.
% [белгілер] [өріс ені] [дәлдігі[F/N/h]/l] c-n.
С-n- түрлендіру символы блай жазылуы мүмкін.
С-аргумент мәні символ болады.
D немесе i –
аргумент мәні ондық сан
е -аргумент мәні ехе потенциалды түрде берліген нақты сан.
E-аргумент мәні ехе потенциалды түрде берліген нақты сан.
F және f –
жылжымалы нүкте арқылы
G,g – қажет емес 0-ді өшіреді.
O – аргумент мәні сегіздік жүйедегі сан.
S – сегіздік жүйедегі символдар қатары.
u – таңбасыз бүтін сан.
х,x – аргумент мәні он алтылық жүйедегі сандарды
қабылдайды.
р – аргумент мәні көрсеткіш (указатель).
n -
форматтау операциясының
# g,f,l,x –символдарының алдында қолданады.
Егер % таңбасынан
кейін түрлендіру символы тұрмаса оны
экранға шығарады.
Print f () функциясы басқару қатарын қолданады.
Қанша аргумент бар, олардың типтері қандай?
Басқару символдарының ең көп қолданылатындары:
\а – дыбыс символдарын аз уақыт беру.
\в – курсорды бір позицияға солға жылжыту.
\f – формат көрсету.
\n -жаңа жолға шығу.
\r -көрсеткішті қатар басына келу.
\t-горизантальды табуляция.
\v-вертикалды табуляция.
\\-«/»- тағбаларын экранға шығару.
«/»-.-экранға шығады.
\-- экранға шығады.
\?-?-белгісін
экранға шығарады.
Мысалы: print f(²tcomputer)n&d\n,²i)
Алдымен горизантальды табуляция орындалады, яғни курсор экран шетінен жылжиды. Одан соң компьтер деген сөз экранға шығады. Одан соң курсор келесі жолдың басына көтеріледі. Одан соң I деген бүтін сан % d ондық формуласы бойынша экранға шығады. Ең соңында курсор келесі жолдың басына көшеді.
Символдар
қатарын экранға былайша
1.6 Мәліметтерді форматтап енгізу.
Scan f () функциясы формат бойынша мәліметтерді енгізеді.
Форматы : Scan f () (“басқару қатары”, аргумент 1,аргумент 2…).
Аргументтер-сәйкес мәндер көрсеткіштері. Сондықтан айнымалылар алдында белгісі жазылады.
Басқару қатары-түрлендіру спецификаттарын көрсетеді. Оларға бос орындар,табуляция символдары , жаңа жолға көшу. Түрлендіру символды баспаға шығару символдарына ұқсас. Кейбір симолдарының алдында модификациялар жазылуы мүмкін.
F – tar типті көрсеткішті көрсетеді.
N - near типті көрсеткішті көрсетеді.
h – char int типті
көрсеткішті көрсетеді; бұл d,
l - long int типті көрсеткішті көрсетеді.
L - long double типті көрсеткішті көрсетеді.
Мыс: бүтін сан int a символ в-ны нақты сан t былай енгізуге болады.
Scanf (²% d², &a)
Scanf (²% l², &b); Scanf (²% d%c%f²&a,&b,&c”)
1.7 Программа құрылымы
Программа мынандай элементтердің жиынынан тұрады. Процессорлардың командаларды, компилятор көрсеткіштері, хабарламалар мен анықтамалардан тұрады.
Тестерінің компиляция алдында өзгертеді. Компиляторға
көрсеткіштер арнайы құрал-саймандар (указатель), олар
арқылы программа орындалады (скомпилируется).
Айнымалыларды хабарлау – айнымалының атрибутын көрсетеді.
Айнымалыларды анықтау – – оған ЭВМ жадынан орын береді.
Функцияларды
хабарлау – оның атын, оның формальдық
параметрлерінің атрибутын
Мысалы: int x =1;\* айнымалыларды анықтау*/
int y=2;
extern int printf (char*, …); \* функцияны хабарлау*/
main () \* бас функцияны анықтау */
{int r ;/* айнымалыларды анықтау */
int w;
z=y+x; .w=y-x;
printf (²r=%d\w=%d\n²,r,w);}
Типтерді түрлендіру.
Егер өрнекте
әр түрлі типті операндылар бар
болса,оларды бір жалпы типке
келтіру керек.Ол үшін мынандай функциялар
тізімі бар.
1.Егер операндылардың біреуінің типі double болса ,онда қалғаны да сол типке келтіріледі.
2.Немесе long болса
қалғаны да сол типке
3.Немесе float типті болса қалғаны сол типке келтіріледі.
4.Немесе unsignet
болса қалғаны сол типке
5.long болса қалғаны сол типке келтіріледі.
6. unsignet болса қалғаны сол типке келтіріледі.
7.int болса қалғаны сол типке келтіріледі.
int a=30000;
float b;
- - - - -
b=(float)a*12;
Aйнымалысы int-тiң түрi,яғни char 1 байт 4 байттың өлшемiн алады. Ол айнымалы C++ға қалай сол алдында жариялауы керек. C++ға бағдарламашылар C: void, int, float, double және charден мәлiметтердiң бес түрлерi қолдана алады. Сипаттама түр void ешқандай да түрге сәйкес келмейдi int нақты, float нақтысы өте аз дәлдiк, double нақты ,екi есе шығыны дәлдiк char болып табылады.
Бұдан басқа түрлер C++ барып тұр: bool және wchar_t. Сипаттама түр (ақиқат ) true-ның bool-ы логикалық, немесе (жалған ) false wchar_t ұлғаймалы (барлық көрсетiлетiн символдар жүйелерiнде қолдауы керек) болады.
| Тип | Сипаттама |
| void | ешқандай да типке сәйкес келмейд |
| int | тұтас |
| float | нақтысы өте аз дәлдiк |
| double | нақты екi есе шығыны дәлдiк |
| char | символдық |
| Тип | |
| bool | логикалық, true (ақиқат) немесе false (жалған) |
| wchar_t | ұлғаймалы (барлық көрсетiлетiн символдар жүйелерiнде қолдауы керек бол) нышандығы |
Типтің модификаторлары:
Аталған түрлердiң кейбiрi (таңбалы ) signed-тiң
сөзi, (таңбасыз ) unsigned, (қысқа ) short және
(ұзын ) longның түрлендiруге болады. Егер
түр көрсетiлмесе, онда intтiң түрi жобаланады.
Болуы мүмкiн түрлендiргiштерi бар түрлердiң
толық жиыны төменде көрсетiлген :
Типтердiң
өлшем және диапазондары
Типтердiң мәндерiнiң өлшем және диапазондары қолданылатын процессор және компиляторлардан тәуелдi болады.
«cfloat» (немесе float.h) cfloatтiң басы үшiн арналған файлы нақты типтер үшiн мiнездемеде болады, (немесе limits.h) climits - бүтiн санды түрлер үшiн. Сiз (байттардағы) кез келген типтiң өлшемiнiң анықтауы үшiн sizeof операцияны пайдалана аласыз.
Бұл өлшемдер архитектуралардың көпшiлiктерi үшiн дегенмен дәл келедi: char-дың float-ы int әдетте 32 битi бар, 8 бит, double - 64 бит; bool сақтаулар үшiн 8 бит, long long-нi қолданылады - 64 бит.
Санмен көрсетiлген түрлер үшiн шектеулер
басы үшiн арналған файлда анықталған.
Numeric_limitsтiң үлгi бойынша сыныбының әдiс
және тұрақтылары төменде сипатталған.
Бұл сыныптың мамандандыруы мәлiметтердiң
кез келген қолданбалы түрi үшiн анықтай
алады.
| Әдiс немесе тұрақты | Нәтиженiң түрi | Сипаттама |
| is_specialized | bool | |
| radix | int | дәреженiң көрсеткiшiнiң негiзi |
| digits | int | цифрлардың мантиссасындағы (екiлiк ) сан |
| digits10 | int | ондық цифрлардың мантиссасындағы сан |
| is_signed | bool | сан таныс па? |
| is_integer | bool | тұтас |
| is_exact | bool | дәлi ме? |
| min() | <тип> | бiрыңғайлалған (үшiн нақты оң) ең төменгi мән |
| max() | <тип> | мән ең үлкен |
| epsilon() | <тип> | мұндай дәлдiк 1 + epsilon > 1 |
| round_error() | <тип> | дөңгелектеу қателiгi |
| infinity() | <тип> | шексiздiк |
| quiet_NaN() | <тип> | қате туралы белгi бермейтiн қате сан |
| signaling_NaN() | <тип> | қате туралы белгi беретiн қате сан |
| denorm_min() | <тип> | бiрыңғайламалған ең төменгi мән |
| min_exponent | int | (екiлiк ) ең төменгi экспоненті |
| min_exponent10 | int | (екiлiгi ) ең төменгi |
| max_exponent | int | (екiлiк ) максима |
| max_exponent10 | int | максимал ондық |
| has_infinity | bool | шексiздiк бар ма? |
| has_quiet_NaN | bool | |
| has_signaling_NaN | bool | |
| has_denorm | <тип>_denorm_style | |
| has_denorm_loss | bool | |
| is_iec559 | bool | IEC-559 сәйкес келедi ме? |
| is_bounded | bool | шектелген бе? |
| is_modulo | bool | модул бойынша ма? |
| traps | bool | |
| tinyness_before | bool | |
| round_style | float_round_style { round_to_nearest, … } |
дөңгелектеудi түр |
Негiзiнде шекаралардың тексеруi, осы тип бола алатын максимал және ең төменгi мәндердiң анықтауы үшiн қолданылады. Код нақты компьютер үшiн shortтың түрiнiң минимум және максимумын төменде баспаға шығарады.
#include <limits>
std::cout << "Maximum
short value: " << std::numeric_limits<short>::ma
std::cout << "Minimum
short value: " << std::numeric_limits<short>::mi
Типтің хабарлауды қалай оқуға болады
Түрдiң бос тұруымен хабарлау оңай түсiну:
int i
Қалай бiрақ бұл күрделi хабарлаудан астам түсiну:
double **d[8]
char *(*(**foo [][8])())[]
Бұл хабарлаулар түсiнігiн келесi үш ереженi қолдану үшiн:
1.(мысалдардағы d немесе foo жоғары) айнымалының атынан бастаңыз.
2.(double немесе char жоғары) түрдiң атында бiтiрiңiз .
3.Содан соң (жабылмалы жақшаның табылуында солға бару қажету) солға оңға жүрем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 анықтай алады.
Айнымалы типі осы олармен байланатынын анықталады. Айнымалысы integerдiң түрлерi тек қана табандатқан мәндермен әдетте аралықта байлана алады - 32768 32767ге. Басқа бүтiн санды түрлер Pascal барып тұр. Айнымалысы realдың түрлерi (бөлшектi ) нақты сандарды сақталады.
(логикалық ) айнымалы булев түрi айнымалы тек қана екi мән - (1, расында) true қабылдай алады.
Символдық типі (char ) нышандардың нақтылы ретке салған тiзбегiнен мәнi қабылдай алады.
Бұдан басқа, үшiн нышандық айнымалы мұндай функцияларды қолданылады: (ch ) pred - алдыңғы нышанды қайтарады; (ch ) succ - келесi нышанды қайтарады; (ch ) upcase - к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н нышандық айнымалы мұндай функцияларды қолданылады:
(ch ) pred - алдыңғы нышанды қайтарады;
(ch ) succ - келесi нышанды қайтарады;
(ch ) upcase - кiшi әрiптi бас өзгертедi.
Тек қана латынша әлiпбидiң әрiбiн жұмыстанады.
Өзi табиғи бүтiн санды түр - бұл intтiң түрi, integer-дiң сөзiнен - бүтiн сан. Int түр машина сөзi немесе мекен жайды өлшемге әрдайым сәйкес келедi. Барлық әсерлер intтiң түрiнiң элементтерiмен жылдам барынша өндiрiп алады. Егер қолдану басқа бүтiн санды түрлердi болатын есептiң ерекшелiгiмен анық ерiксiз көндiрмесе int-тiң түрдiң өзi әрдайым таңдау керек. Бүтiн сандармен немесе нышандармен жұмыс iстейтiн үйреншiктi функциялардың көпшiлiгiнiң параметрлерi int-тiң түрлерiн алады. Бүтiн санды түрлер дәрiсте 2 толық қарап шыққан. Бүтiн санды айнымалы негiзiнен сақталатын тағы бiр рет бүтiн сан емес, m mның модулы бойынша шегермелердiң сақинасының элементтерi екiнiң дәрежесi астын сызамыз. Int-тiң түрiнiң элементiнiң қазiргi архитектураларында 4 байтта орналасады, яғни. Int-тiң түрiнiң элементтерi сан сияқты силарға түсiндiредi таныс. Ең төменгi терiс сан тең - 231 =-2147483648, максимал оң 231-1 = 2147483647 тең.

- Ситовой анализ схемы рассеивающих машин. Реализация процесса: классификация
- Ситстема Гарант
- Ситуации речевого этикета
- Ситуационная методология «case studies»: ее возможности и границы
- Ситуационная теория
- Ситуационная теория лидерства
- Ситуационные виды спорта
- Систологический и минутный объем сердца, их диагностика
- Ситема методов управления
- Ситема права
- Ситема суб’єктів адміністративної юрисдикції в Україні
- Ситемы оздоровления организма
- Ситемы оперативного планирования
- Си тіліндегі жады ұғымы. Жады кластары