Typy údajov v SI. Typy údajov

Typ údajov určuje súbor hodnôt, súbor operácií, ktoré možno aplikovať na takéto hodnoty a spôsob implementácie skladovania hodnôt a výkonu operácií.

Proces kontroly a ukladania obmedzení na typy použitých údajov sa nazýva regulácia typu alebo Údaje o písaní programu. Rozlišovať tieto typy písania:

  • Pri kompilácii sa vykonáva kontrola typu typu.
  • Dynamický typifikácia - Type Control sa vykonáva počas realizácie.

Jazyk SI podporuje statické písanie a typy všetkých údajov použitých v programe musia byť uvedené pred kompiláciou.

Rozlišovať jednoduché, kompozitné a iné typy údajov.

Jednoduché údaje

Jednoduché údaje možno rozdeliť

  • celé číslo
  • reálny
  • symbol
  • hlavolam.

Kompozitné (komplexné) údaje

  • Pole je indexovaná sada prvkov rovnakého typu.
  • Typ reťazca - pole ukladania reťazca znakov.
  • Štruktúra - súbor rôznych prvkov (vstupné polia), uložené ako celok a poskytuje prístup k jednotlivým oblastiam štruktúry.

Iné typy údajov

  • Ukazovateľ - ukladá adresu v pamäti počítača, čo znamená, že akékoľvek informácie, spravidla, ukazovateľ na premennú.

Program napísaný v jazyku SI pôsobí s údajmi z rôznych typov. Všetky údaje majú názov a typ. Prístup k údajom v programe sa vykonáva svojimi menami (identifikátormi).

Identifikátor je sekvencia, ktorá neobsahuje viac ako 32 znakov, medzi ktorými môžu existovať akékoľvek písmená latinskej abecedy A - Z, A - Z, obrázky 0 - 9 a podpísanie podčiarknutia (_). Prvý charakter identifikátora by nemal byť číslica.

Hoci názov, ktorý má až 32 znakov, je povolených, iba prvých 8 znakov sú určená hodnota. Okrem názvu sú všetky údaje typu. Typ Špecifikácia je potrebná, aby bolo známe, koľko priestoru v RAM bude mať tento objekt.

Compler C je dodržaný prísnym súladom kapitálu a malých písmen v menách identifikátorov a Lex.

Integerové údaje

Jadrové údaje môžu byť prezentované v znamení a nepodpísanej forme.

Nestabilné celé čísla Je reprezentovaný ako sekvencia bitov v rozsahu od 0 do 2 n-1, kde obsadené N-počet bitov.

Signálne celé čísla Prezentované v rozsahu -2 n-1 ... + 2 N-1 -1. V tomto prípade je seniorský kúsok tohto prideleného pod označením čísla (0 zodpovedá kladnému číslu, 1 - negatívnemu).

Hlavné typy a veľkosti integerových údajov:

Skutočné informácie

Reálny typ Navrhnuté tak, aby predstavovali platné čísla. Skutočné čísla sú prezentované v priepustnej mriežke stroja v normalizovanej forme.

Normálny formulár Predpokladá prítomnosť jednej významnej číslice (nie 0) na oddelenie celej a frakčnej časti. Takéto znázornenie sa vynásobí základňou číslového systému do príslušného stupňa. Napríklad číslo 12345.678 v normalizovanej forme môže byť reprezentované ako

12345,678 \u003d 1,2345678 · 10 4

Číslo 0.009876 v normalizovanej forme môže byť reprezentované ako

0,009876 \u003d 9,876 · 10 -3

V systéme binárneho čísla môže byť významný výtok smerom k oddeľovaču celej a frakčnej časti rovný len 1. Ak číslo nie je možné predložiť v normalizovanej forme (napríklad číslo 0), čo znamená vypúšťanie pred oddelením celej a frakčnej časti je 0.

Zmysluplné vypúšťanie čísla v normalizovanej forme po oddeľovači celej a frakčnej časti sa nazývajú mantisové číslo.

Vo všeobecnom prípade môže byť reálne číslo v výtlačnej mriežke výpočtového stroja reprezentované ako 4 polia.

  • znamenie - bit, ktorý určuje znamenie reálneho čísla (0 pre kladné čísla, 1 - pre negatívne).
  • moc - Určuje stupeň 2, na ktorý sa vyžaduje, aby sa počet nevynásobil v normalizovanej forme. Keďže stupeň 2 pre číslo v normalizovanej forme môže byť pozitívny aj záporný, nulový stupeň 2 v reprezentácii reálneho čísla zodpovedá hodnotám posunu, ktorá je definovaná ako

    kde n je počet vypúšťaní pridelených na reprezentáciu stupňa čísla.

  • celok - bit, ktorý pre normalizované čísla je vždy rovné 1, preto v niektorých typoch typov je tento bit vynechaný a sa berie rovný 1.
  • mantissa - čo znamená indikácie počtu čísel, ktoré stoja po oddeľovači celej a frakčnej časti v normalizovanej forme.

V jazyku C existujú tri hlavné typy prezentácie reálnych čísel:

Ako možno vidieť z tabuľky, chýbajú bity typov plaváka a dvojité. V tomto prípade sa rozsah reprezentácie reálneho čísla pozostáva z dvoch rozsahov umiestnených symetricky vzhľadom na nulu. Napríklad rozsah reprezentácie typu typu plavák môže byť reprezentovaný ako:

Príklad: Odošlite číslo -178,125 v 32-bitovej mriežke (typový plavák).

Ak chcete reprezentovať číslo v systéme binárneho čísla, premeneme oddelene a frakčné časti:

178 10 = 10110010 2 .

0,125 10 = 0,001 2 .

178,125 10 \u003d 10110010,001 2 \u003d 1 0110010001 · 2 111

Pre konverziu na normalizovanú formu sa posun vykonáva 7 číslic vľavo).

Na určenie stupňa čísla používame posun:

0111111+00000111 = 10000110 .

Číslo -178,125 sa teda zavedie do výtlačnej siete ako

Typ symbolu

Typ znaku ukladá kód symbolu a používa sa na zobrazenie znakov v rôznych kódovaní. Symbolické údaje sú nastavené v kódoch a sú v podstate celé hodnoty. Pre ukladanie znakov kódov v jazyku C, použite typ CHAR.

Logický typ

Logický typ sa používa v logických operáciách, používa sa v algoritmických testoch podmienok a cyklov a má dve hodnoty:

  • pravda - TRUE.
  • fALSE - - FALSE

Program musí byť poskytnutý všetkými použitými údajmi označujúcimi ich meno a typ. Popis údajov by mal predchádzať ich použitie v programe.

Príklad oznámenia objektu

int n; // variabilný n celý typ
dvojité a; // variabilný reálny typ dvojitej presnosti

Posledná aktualizácia: 09/17/2017

Každá premenná má špecifický typ. A tento typ určuje, ktoré hodnoty môžu mať premennú, ktorá môže byť vykonaná a koľko bajtov v pamäti bude obsadiť. Nasledujúce základné typy údajov sú definované v C ++:

    bOOL: LOGICKÝ TYP. Môže užívať jednu z dvoch hodnôt true (pravda) a nepravdivé (lži). Veľkosť obsadenej pamäte pre tento typ nie je definovaná.

    char: predstavuje jeden znak v kódovaní ASCII. Trvá to v pamäti 1 bajt (8 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od -128 do 127 alebo od 0 do 255

    podpísané char: predstavuje jeden znak. Trvá to v pamäti 1 bajt (8 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od -128 do 127

    usporiadaný char: predstavuje jeden znak. Trvá to v pamäti 1 bajt (8 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od 0 do 255

    wCHCH_T: predstavuje rozšírený symbol. Na Windows berie do pamäte 2 bajty (16 bitov), \u200b\u200bna Linuxe - 4 bajtoch (32 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od 0 do 65 535 (pri 2 bajtoch), alebo od 0 do 4 294 967 295 (pre 4 bajty)

    cHAR16_T: predstavuje jeden znak v kódovaní Unicode. Trvá v pamäti 2 bajty (16 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od 0 do 65 535

    char32_T: predstavuje jeden znak v kódovaní Unicode. Trvá na pamäť 4 bajtov (32 bitov). Môže uložiť akúkoľvek hodnotu z rozsahu od 0 do 4 294 967 295

    krátke: predstavuje celé číslo v rozsahu od -32768 do 32767. Trvá v pamäti 2 bajty (16 bitov).

    Tento typ má tiež synonymá pre krátky int, podpísali krátke int, podpísali krátke.

    usporiadané krátke: predstavuje celé číslo v rozsahu od 0 do 65535. Trvá v pamäti 2 bajty (16 bitov).

    Tento typ má tiež synonymum pre nepodpísaný krátky int.

    int: predstavuje celé číslo. V závislosti od architektúry procesora môže 2 bajty (16 bitov) alebo 4 bajtov (32 bitov) obsadiť 2 bajty. Rozsah marginálnych hodnôt sa teda môže tiež meniť od -32768 do 32767 (pri 2 bajtoch) alebo od -2 147 483 648 do 2 147 483 647 (pri 4 bajtoch). Ale v každom prípade musí byť veľkosť väčšia alebo rovná veľkosť typu krátkeho a menej alebo sa rovná veľkosti

    Tento typ má synonymá podpísané a podpísali.

    nepodpísaný int: predstavuje pozitívne celé číslo. V závislosti od architektúry procesora môže 2 bajty obsadiť (16 bitov) alebo 4 bajtov (32 bitov) a vďaka tomuto rozsahu limitných hodnôt sa môže líšiť: od 0 do 65535 (pre 2 bajty), alebo od 0 do 4 294 967 295 (pre 4 bajty).

    Ako synonym pre tento typ možno použiť nepodpísaný

    dlhé: predstavuje celé číslo v rozsahu od -2 147 483 648 do 2 147 483 647. Trvá v pamäti 4 bajtoch (32 bitov).

    Tento typ má tiež synonymá pre dlhý int, podpísal dlhý int a podpísal dlho

    usporiadaný dlhý: predstavuje celé číslo v rozsahu od 0 do 4 294 967 295. Trvá v pamäti 4 bajtoch (32 bitov).

    Má synonymum nepodložené dlhý int.

    dlhé dlho: predstavuje celé číslo v rozsahu od -9 223 372 036 854 775 808 až +9 223 372 036 854 775 807. Trvá v pamäti, spravidla 8 bajtov (64 bitov).

    Má synonymá dlhý dlhý int, podpísal dlhý dlhý int a podpísal dlho.

    neprijaté dlhé dlhé: predstavuje celé číslo v rozsahu od 0 do 18 446 744 073 709 551 615. Trvá v pamäti, spravidla 8 bajtov (64 bitov).

    Má synonymum nepodpísaný dlhý dlhý int.

    float: predstavuje skutočný počet bežných presnosti s plávajúcim bodom v rozsahu +/- 34E-38 až 3,4E + 38. V pamäti zaberá 4 bajty (32 bitov)

    dvojité: predstavuje skutočný počet dvojitého presnosti s plávajúcim bodom v rozsahu +/- 1,7E-308 až 1,7E + 308. V pamäti berie 8 bajtov (64 bitov)

    dlhé dvojité: predstavuje skutočný počet dvojitých presnosti s plávajúcim bodom aspoň 8 bajtov (64 bitov). V závislosti od veľkosti pamäte sa môže rozsah prípustných hodnôt líšiť.

    vOID: Typ bez hodnoty

Tak, všetky typy údajov okrem prázdnoty môžu byť rozdelené do troch skupín: symbolické (char, wchar_t, char16_T, char32_T), celé číslo (krátke, int, dlhé, dlhé dlhé) a floatingové bodové čísla (plavák, dvojitý, dlhý dvojitý).

Symbolické typy

Na zobrazenie znakov v aplikácii sa používajú typy char, wchar_t, char16_T a char32_T.

Definujeme niekoľko premenných:

Char C \u003d "D"; wchar_t d \u003d "c";

Premenná typu char ako hodnota berie jeden znak v jednosmerných citáciách: Char C \u003d "D". Môžete tiež priradiť číslo z vyššie opísaného rozsahu: Char C \u003d 120. V tomto prípade bude hodnota premennej C charakter, ktorý má kód 120 v tabuľke symbolov ASCII.

Treba mať na pamäti, že na výstup konzoly WCHCH_T symbolov nie je potrebné používať STD :: COUT, A STD :: WCOUT Stream:

#Include. Int hlavné () (char a \u003d "h"; wchar_t b \u003d "e"; STD :: WCOUT<< a << b << "\n"; return 0; }

Súčasne, STD :: WCOUT tok môže pracovať s charom a wchar_t. A STD :: COUT Stream pre premennú WCHCHER_T zobrazí jeho číselný kód namiesto symbolu.

V norme C ++ 11 sa pridajú typy char16_T a char32_T, ktoré sú zamerané na používanie Unicode. Avšak, na úrovni OS, prúdy nie sú implementované do práce s týmito typmi. Preto, ak potrebujete zobraziť hodnoty týchto typov do konzoly, musíte premieňať premenné do typov char alebo wchar_t_t:

#Include. Int hlavné () (char a \u003d "h"; wchar_t b \u003d "e"; char16_T c \u003d "l"; char32_T d \u003d "o"; STD :: COUT<< a << (char)b << (char)c << (char)d << "\n"; return 0; }

V tomto prípade, keď sa zobrazí pred premennými, je uvedený typ CHAR- (typ char je uvedený, vďaka ktorej hodnoty premenných B, C a D sú konvertované na typ CHAB a môžu byť zobrazené na konzole pomocou STD :: Stream.

Inteligentné typy

Druhé typy sú prezentované nasledujúcimi typmi: krátke, nepodpísané krátke, int, nepodpísaný int, dlhé, nepodpísané dlhé, dlhé dlhé a nepodpísané dlhé dlhé:

Krátke A \u003d -10; krátke b \u003d 10; int c \u003d -30; nepodpísaný int d \u003d 60; Dlhý e \u003d -170; dlhá f \u003d 45; Dlhý dlhý g \u003d 89;

Typy čísel plávajúceho bodu

Typy čísel s plávajúcim bodom IILI Frakčné čísla sú reprezentované takýmito typmi ako plavák, dvojité a dlhé dvojité:

Plavák A \u003d -10,45; Dvojitý b \u003d 0,00105; Dlhé dvojité c \u003d 30,890045;

Typy údajov

Vo vyššie uvedenom zozname je pre každý typ špecifikovaný veľkosť, ktorú potrebuje v pamäti. Stojí však za zmienku, že limit veľkosti pre typy vývojárov kompilátorov si môžu vybrať samostatne, založené na počítačových hardvérových schopnostiach. Štandard stanovuje len minimálne hodnoty. Napríklad pre typy int a krátke, minimálna hodnota je 16 bitov, pre dlhé typy - 32 bitov, pre dlhý dvojitý typ. Zároveň by veľkosť dlhého typu nemala byť nižšia ako typ typu INT a veľkosť typu INT nie je nižšia ako veľkosť typu krátkeho a veľkosť dlhého dvojitého typu musí byť viac double. Napríklad kompilátor G ++ pod oknami pre dlhé dvojité používa 12 bajtov a kompilátor zapustený do vizuálneho štúdia a tiež funguje pod oknami pre dlhé dvojité použitie 8 bajtov. To znamená, že aj v rámci tej istej platformy, rôzne kompilátory môžu pristupovať k veľkosti niektorých typov údajov rôznymi spôsobmi. Všeobecne platí, že tieto rozmery sa používajú vyššie pri opise typov údajov.

Existujú však situácie, keď potrebujete presne vedieť veľkosť určitého typu. A na to, v C ++ je obsluha SIZEOF (), ktorá vracia veľkosť pamäte v bajtoch, ktorú premenná trvá:

#Include. Int hlavné () (dlhé dvojité číslo \u003d 2; std :: cout<< "sizeof(number) =" << sizeof(number); return 0; }

Konzolový záver pri zostavovaní v G ++:

sITEF (číslo) \u003d 12

Zároveň pri určovaní premenných je dôležité pochopiť, že hodnota premennej by nemala prekročiť rámec limitov, ktoré sú uvedené pre jeho typ. Napríklad:

Krátke číslo \u003d -65535;

Kompilátor G ++ pri zostavovaní programu s týmto reťazcom sa podrobí chybe, že hodnota -65535 nie je zahrnutá v rozsahu platných hodnôt pre typ nepodloženého krátkeho a je skrátený.

V vizuálnom štúdiu môže kompilácia prejsť bez chýb, avšak variabilné číslo dostane hodnotu 2 - výsledok konverzie čísla -65535 na nepodpísaný krátky typ. To znamená, že výsledok nebude presne ten, ktorý sa očakáva. Hodnota premennej je len súbor bitov v pamäti, ktoré sú interpretované v súlade s konkrétnym typom. A pre rôzne typy, rovnaký súbor bitov môže byť interpretovaný rôznymi spôsobmi. Preto je dôležité zohľadniť rozsahy hodnôt pre jednu alebo druhú pri priradení variabilnej hodnoty.

Auto Špecifikátor

Niekedy je ťažké určiť typ výrazu. A podľa najnovších noriem môžete vytvoriť kompilátor na zobrazenie typu objektu. A pre toto platí Auto špecifikátor. V tomto prípade, ak určíme premennú s AUTO špecifikátorom, táto premenná musí byť inicializovaná akejkoľvek hodnoty:

Auto číslo \u003d 5;

Na základe priradenej hodnoty sa kompilátor zobrazí typ premennej. Uniniciálne premenné s automatickým špecifikátorom nie sú povolené.

Uloženie rôznych údajov v programovacích jazykoch, premenné používajú premenné premenné. Premenná sa nazýva oblasť pamäte, ktorá má názov, ktorý sa inak nazýva identifikátor.

Uvedenie názvu premennej, programátor súčasne zavolá rovnaký názov a oblasť pamäte, kde bude zaznamenaná hodnota skladovacej premennej.

Dobrý štýl je zmysluplným pomenovaním premenných. Je možné použiť malé a veľké písmená, čísla a kláves s dôrazom, ktorý je považovaný za list. Prvým znakom musí byť písmeno, nemali by byť žiadne medzery v názve premennej. V moderných verziách kompilátorov je názov názvu prakticky neobmedzený. Názov premennej sa nemôže zhodovať s rezervovanými kľúčovými slovami. Kapitálové a malé písmená v menách variabilných sa líšia, premenné a. a A. - rôzne premenné.

Vyhradené kľúčové slová Auto Double InT struction Break Else Long Switch Register Tupdef CHAR CHAR CHAR MONEJECTUÁLNYCH PRÍPRAVA POUŽÍVATEĽA CASE FLOUND PODNIKATEĽOV
V jazyku SI musia byť oznámené všetky premenné. To znamená, že po prvé, na začiatku každého programu alebo funkcie musíte priniesť zoznam všetkých použitých premenných a po druhé, špecifikovať typ každého z nich.

Pri deklarovaní premennej si kompilátor zavedie miesto v pamäti v závislosti od typu. Štandardné nástroje AVR GCC pracuje s typmi údajov char. (typ symbolu) a int. (Integer typ).

Typy premenných

Zadajte znak.

char. - Je to najhospodárnejší typ. Typ char môže byť ikonický a nepodpísaný. Označuje, resp. podpísané znak."(podpísať typ) a" nepodpísaný char."(neúspešný typ). Typ ikonického typu môže ukladať hodnoty v rozsahu od -128 do +127.

Kľúčové slová (modifikátory) podpísané. a nepodpísaný Uveďte, ako sa nulový bit deklarovanej premennej interpretuje, t.j. Ak je kľúčové slovo nepodpísané, nulový bit je interpretovaný ako súčasť čísla, inak nulové bity interpretované ako znak.

Zadajte Int.

Celú hodnotu int. možno krátky (krátke) alebo dlho. (dlhé).

Kľúčové slovo (modifikátor) krátky Dajte po kľúčových slovách podpísané. alebo nepodpísaný. Nasledujúce typy sa teda rozlišujú: podpísaný krátky int, nepodpísaný krátky int, podpísaný dlhý int, nepodpísaný dlhý int.

Typ Premenná podpísaný krátky int. (Sign krátke celé číslo) môže mať hodnoty od -32768 do +32767, short int. (Nesignené krátke celé číslo) - od 0 do 65535. Pre každé z nich sú uvedené presne dve pamäťové bajty (16 bitov).

Pri deklarovaní typu premennej podpísaný krátky int. Kľúčové slová podpísané. a krátky Môže byť zmeškaný, a tento typ premennej je možné vyhlásiť jednoducho int.. Oznámil tento typ jedným kľúčovým slovom krátky.

Premenlivý short int. môže byť oznámené ako nepodpísaný int. alebo krátke.

Pre každú veľkosť podpísaný dlhý int. alebo nepodpísaný dlhý int 4 Memory Byte (32 bity) sú priradené. Hodnoty premenných tohto typu môžu byť v intervaloch -2147483648 až 2147483647 a od 0 do 4294967295, resp.

Tam sú tiež premenné dlhý dlhý intPre ktoré sa uvádza 8 pamäťových bajtov (64 bitov). Môžu byť tiež ikony a nepodpísané. Pre ikonický typ rozsahu hodnôt leží od -9223372036854775808854775807, pre nepodpísaný - od 0 do 18446744073709551615. Typ ikony môže byť vyhlásený a jednoducho dve kľúčové slová dlho..

Typ Rozsah Hexadecimálny rozsah Veľkosť
nepodpísaný char. 0 ... 255 0x00 ... 0xff 8 bit.
podpísané znak.
alebo jednoducho
char.
-128 ... 127 -0x80 ... 0x7f. 8 bit.
short int.
alebo jednoducho
nepodpísaný int. alebo krátke
0 ... 65535 0x0000 ... 0xffff. 16 bit.
podpísaný krátky int. alebo podpísaný int.
alebo jednoducho
krátky alebo int.
-32768 ... 32767 0x8000 ... 0x7FFF. 16 bit.
nepodpísaný dlhý int
alebo jednoducho
dlhé.
0 ... 4294967295 0x00000000 ... 0xffffffff. 32 bit.
podpísané dlhé.
alebo jednoducho
dlho.
-2147483648 ... 2147483647 0x80000000 ... 0x7fffffff. 32 bit.
dlho. 0 ... 18446744073709551615 0x0000000000000000 ... 0xfffffffffffffffff. 64 bit.
dlhodobo.
alebo jednoducho
dlho.
-9223372036854775808 ... 9223372036854775807 0x800000000000000000 ... 0x7ffffffffffffffff. 64 bit.

Premenné sú vyhlásené v opise popisu. Opis operátora sa skladá z typovej špecifikácie a zoznam názvov premenných oddelených čiarkou. Na konci je potrebné postaviť bod so čiarkou.

Vyhlásenie o premennej má tento formát:

[Modifikátory] Špecifikátor_Type ID [, identifikátor] ...

Modifikátory - Kľúčové slová podpísané., nepodpísaný, krátky, dlho..
Typ špecifikátor - kľúčové slovo char. alebo int.Určenie typu deklarovanej premennej.
Identifikátor - názov premennej.

Príklad: Char X; int a, b, c; Dlhý dlhý y;
Premenné tak budú oznámené x., a., b., c., y.. V premennej x. Môžete nahrávať hodnoty od -128 do 127. V premenných a., b., c. - od -32768 do +32767. V premennej y. - od 0 do 18446744073709551615.

Inicializácia hodnoty premennej pri vyhlásení

Pri deklarovaní premennej je možné inicializovať, to znamená, že ju priradí počiatočnú hodnotu. Toto sa dá urobiť nasledovne. int x \u003d 100; Tak, v premennej x. Pri vyhlásení sa číslo 100 okamžite zaznamená.

Je lepšie vyhnúť sa zmiešaniu inicializovaných premenných v jednom opise, to znamená, že inicializované premenné sú lepšie vyhlásiť v samostatných riadkoch.

Konštanty

Premenná akéhokoľvek typu môže byť deklarovaná ako nemodifikovateľná. To sa dosahuje pridaním kľúčového slova. const. napísať špecifikáciu. Premenné s typom const. Existujú údaje používané len na čítanie, to znamená, že táto premenná nemôže byť priradená nová hodnota. Ak za slovo const. Neexistuje žiadny typ typu, potom sa konštanty považujú za hodnoty so znakom a sú priradené k typu int. alebo dlhý int V súlade s hodnotou konštanty: Ak je konštanta nižšia ako 32768, potom je priradený typ int., inak dlhý int.

Príklad: const dlhé int k \u003d 25; const m \u003d -50; // Členovia Const int m \u003d -50 const n \u003d 100000; // Členovia Const Long int n \u003d 100000

Priradenie

Pre zadanie v SI slúži ako znak "\u003d". Výraz, ktorý stojí vpravo od značky priradenia, vypočíta sa a získaná hodnota je priradená k premennej, ktorá stojí v ľavej časti priradenia. V rovnakej dobe, predchádzajúca hodnota uložená v premennej je vymazaná a nahradená novým.

Prevádzkovateľ "\u003d" by sa nemalo chápať ako rovnosť.
Napríklad expresia A \u003d 5; Mali by ste si prečítať, ako "priradiť variabilnú hodnotu 5".

Príklady: X \u003d 5 + 3; // Zložené hodnoty 5 a 3, // Výsledok priradí premennú X (WRITE na premennú x) b \u003d A + 4; // Pridať 4 na hodnotu uloženú v premennej A, // Získaný výsledok Priraďte premennú B (napíšte premennej B) b \u003d B + 2; // Pridať 2 na hodnotu uloženú v premennej B, // Získaný výsledok priraďuje premennú B (napíšte premennej B)
Na pravej strane sa môže variabilná hodnota použiť niekoľkokrát: C \u003d B * B + 3 * B;

Príklad: X \u003d 3; // premenná x bude priradená na 3 y \u003d x + 5; // Na hodnotu uloženú v premennej X sa pridá číslo 5, // Výsledok bude zaznamenaný v premennej Y z \u003d x * y; // Hodnoty premenných X a Y sa množia, // Výsledok bude zaznamenaný v premennej Z Z \u003d Z - 1; // Z hodnoty uloženej v premennej Z sa vyberie 1// Výsledok bude zaznamenaný v premennej Z
Tak, v premennej z. Uloží sa číslo 23

Okrem jednoduchého operátora priradenia, "\u003d", existuje niekoľko ďalších kombinovaných operátorov priradenia: "+ \u003d", "- \u003d", "* \u003d
Príklady: X + \u003d Y; // rovnako ako x \u003d x + y; - Fold X a Y // a napíšte výsledok v premennej X x - \u003d y; // to isté ako x \u003d x - y; - Odstráňte od x hodnoty y // a napíšte výsledok do premennej x x * \u003d y; // rovnaké ako x \u003d x * y; - Vynásobte X na y // a napíšte výsledok do premennej x x / \u003d y; // rovnaké ako x \u003d x / y; - Rozdeľte X na y // a zaznamenajte výsledok v premennej X x% \u003d y; // to isté ako x \u003d x% y; // Vypočítajte celočíselné zvyšky z rozdelenia X na Y // a zaznamenajte výsledok v premennej X

Prírastok a znižovanie

Ak potrebujete zmeniť hodnotu premennej o 1, potom použitie prírastok alebo výskyt.

Prírastok - zvýšenie hodnoty uloženej v premennej na 1.

Príklad: X ++; // Hodnota premennej X sa zvýši o 1 $ Winavr \u003d ($ _get ["AVR"]); Ak ($ winavr) zahŕňa ($ winavr);
Výskyt - Prevádzka znižovania hodnoty uloženej v premennej, 1.

Príklad: X--; // Hodnota premennej X sa zníži o 1
Prírastok a znižovanie sa týkajú operácií priradenia. Pri použití poklesu a prírastku spolu s operátorom priradenia "\u003d" Aplikujte záznam postfix (X ++) alebo prefix (++ x). Prvým je záznam predpony.

PRÍKLADY: Y \u003d X ++;
Predpokladajme, že v premennej x. udržiavaná hodnota 5. Potom v y. Zaznamenáva sa hodnota 5, po ktorej bude hodnota premennej x. sa zvýši o 1. y. bude 5 a v x. - 6. y \u003d -x;
Ak je x. Hodnota bola uložená 5, potom sa znížil najprv x. Až 4, a potom táto hodnota bude priradená premenná y.. Touto cestou, x. a y. Hodnota bude priradená 4.

Typ údajov v programovaní je súborom dvoch súprav: množstvo hodnôt a mnoho operácií, ktoré sa na ne môžu aplikovať. Napríklad na typ údajov o celé non-negatívne čísla pozostávajúce z konečnej súpravy prirodzených čísel, môžete použiť pridávanie operácií (+), násobenie (*), celočíselné rozdelenie (/), nájsť zvyšok (%) a odčítanie (-).

Programovací jazyk má spravidla súbor primitívnych typov dát - Typy poskytované programovacím jazykom ako základnej vstavanej jednotky. V takýchto typoch C ++, tvorca jazyka nazýva základné typy. Zvážte sa základné typy v C ++:

  • logické (bool);
  • symbol (napr. char);
  • (napr. int);
  • plávajúci bod (napr. Float);
  • prevody (určené programátorom);
  • neplatný.

Nasledujúce typy sú postavené na vrchole uvedených:

  • indexu (napr. int *);
  • polia (napr. Char);
  • odkaz (napr. dvojité a);
  • iné štruktúry.

Dovoľte nám, aby sme sa obrátili na koncepciu doslovného (napr. 1, 2,4F, 25E-4, 'A' atď.): Zmestník - nahrávanie v zdrojovom kóde programu, ktorý predstavuje pevnú hodnotu. Inými slovami, doslovne je len zobrazenie objektu (hodnota) akéhokoľvek typu v programovom kóde. V C ++ je možné písať celé hodnoty, hodnoty plávajúceho bodu, symbolické, boolean, reťazec.

Literál celého typu môže byť napísaný v:

  • 10. číselný systém. Napríklad 1205;
  • 8. číselný systém v 0 + formáte. Napríklad 0142;
  • 16. číselný systém v 0x + formát + číslo. Napríklad 0x2f.

24, 030, 0x18 sú všetky záznamy rovnakého čísla v rôznych systémových systémoch.
Ak chcete napísať čísla plávajúceho bodu Použite nahrávanie cez bod: 0.1, .5, 4. - buď v
Exponenciálny záznam - 25E-100. V takomto zázname by nemali byť žiadne medzery.

Názov, s ktorým môžeme pripojiť hodnoty zaznamenané literálmi, sa nazýva premenná. Premenná je názov oblasti pamäte, ktorá môže byť použitá iným spôsobom, ktorej adresa môže byť použitá na prístup k údajom. Tieto údaje sa zaznamenávajú, prepisujú a vymažú v pamäti určitým spôsobom počas vykonávania programu. Premenná vám umožňuje prístup k údajom kedykoľvek a v prípade potreby ich zmeniť. Údaje, ktoré možno získať menom premennej, sa nazývajú variabilná hodnota.
Aby bolo možné použiť premennú v programe, musí sa ho vyhlásiť, av prípade potreby môžete definovať (\u003d inicializované). Oznámenie premennej v texte programu nevyhnutne obsahuje 2 diely: Typ základne a klasifikáciu. Špecifikátor a inicializátor sú voliteľné časti:

Const int príklad \u003d 3; // Tu je Const - špecifikátor // Int - Basic Type // Príklad - Názov premennej // \u003d 3 - Inicializátor.

Názov premennej je postupnosť symbolov z písmen latinskej abecedy (malé a veľké písmená), čísla a / alebo adhézne znamenie, ale prvé číslo znaku nemôže byť. Názov premennej by mal byť zvolený tak, aby bolo vždy ľahké uhádnuť, že ukladá, napríklad, "mesačný zápas". V abstraktnom a v praxi budeme používať notáciu Camelcase pre pravidlá nahrávania. Názov premennej sa nemôže zhodovať so slovami vyhradenými v jazyku, príklady takýchto slov: ak, zatiaľ čo funkcia, gooto, prepínač a ďalšie slová: ak, zatiaľ čo funkcia, goto, prepínač atď.

Deklon okrem názvu premennej môže obsahovať ďalšie znaky:

  • * - ukazovateľ; pred názvom;
  • * const - konštantný ukazovateľ; pred názvom;
  • a - referencia; pred názvom;
  • - pole; Po mene;
  • () - funkcia; Po mene.

Inicializátor vám umožňuje určiť hodnotu pre premennú ihneď po oznámení. Inicializátor začína s doslovom rovnosti (\u003d) a potom došlo k procesu nastavenia hodnoty premennej hodnoty. Všeobecne povedané, znamenie rovnosti v C ++ označuje činnosť priradenia; S ním môžete určiť a zmeniť hodnotu premennej. Pre rôzne typy to môže byť iné.

Špecifikátor nastaví ďalšie atribúty iné ako typ. Špecifikátor CONST uvedený v príklade vám umožňuje zakázať nasledujúcu hodnotu zmeny premennej. Takéto nemenné premenné sa nazývajú konštantná alebo konštantná.

Ak chcete vyhlásiť konštantu bez inicializácie, nebude fungovať z logických dôvodov:

Const int prázdny_const; // Chyba, konštantná premenná konstónová intrample \u003d 2 nie je inicializovaná; // konštanta s hodnotou 2 príkladu \u003d 3; // Chyba sa snaží priradiť neustálu variabilnú hodnotu

Pre pomenovanie konštánt je zvyčajné používať iba veľké písmená, oddeliť slová so symbolom nižšieho zdvihu.

Hlavné typy údajov v C ++

Prezeranie každého typu, čitateľ by nemal zabudnúť určiť typ údajov.

1. Typ celočícha (char, krátky (INT), Int, dlhý (INT), dlhá)

Z názvu je ľahké pochopiť, že mnohé hodnoty sa skladá z celých čísel. Aj mnohé hodnoty každého z uvedených typov môžu byť znak (podpísané) alebo nepodpísané (nepodpísané). Počet prvkov obsiahnutých v sade závisí od veľkosti pamäte, ktorá sa používa na uloženie hodnoty tohto typu. Napríklad 1 bajt pamäte je uvedený pre premennú typu char, takže všetky položky budú:

  • 2 8N \u003d 2 8 * 1 \u003d 256, kde n je veľkosť pamäte v bajtoch na uloženie hodnoty

V tomto prípade sú rozsahy dostupných celých čísel nasledovné:

  • - pre značku nepodpísaného
  • [-128..127] - pre kultový char

V predvolenom nastavení sa premenná typu celé číslo považuje za značku. Uveďte v kódexe, že premenná musí byť nevyriešená, označenie odznaku sa pripisuje základnému typu ľavého, t.j. Usporiadaný:

Dlhé hodnoty; // nastavuje celý (dlhý) nevyriešený typ.

Uvedené typy sa líšia len na veľkosti pamäte, ktoré sú potrebné na skladovanie. Keďže jazyk C ++ je spravodlivo strojovo závislým jazykovým štandardom zaručuje iba nasledovnú podmienku:

  • 1 \u003d Veľkosť Char ≤ Short ≤ veľkosť Int ≤ Veľkosť Long.

Obvykle sú veľkosti typov typov: char - 1, krátka - 2, int - 4, dlhé -8, dlhé dlhé - 8 bajtov.

S hodnotami celého typu sa môžu vykonávať aritmetické operácie: +, -, *, /,%; Porovnávacie operácie: \u003d\u003d,! \u003d,<=, <, >,\u003e \u003d; Bitové operácie: &, |, xor,<<, >>.
Väčšina operácií, ako je dodatočná, multiplikácia, odčítanie a porovnávacie operácie, nespôsobuje problémy v porozumení. Niekedy po vykonaní aritmetických operácií môže byť výsledok nad rámec hodnôt; V tomto prípade program vydá chybu.
Integerová divízia (/) nájde celú časť rozdelenia jedného celé číslo do druhej. Napríklad:

  • 6 / 4 = 1;
  • 2 / 5 = 0;
  • 8 / 2 = 4.

Percentuálny symbol (%) označuje určovanie prevádzky zvyšku od rozdelenia dvoch celých čísel:

  • 6 % 4 = 2;
  • 10 % 3 = 1.

Je ťažšie pochopiť prevádzku - bit: & (y), Alebo), xor (s výnimkou alebo), \\ t<< (побитовый сдвиг влево), >\u003e (bitový posun doprava).

Bitové operácie a alebo XOR na každý bit informácií aplikujú príslušnú logickú operáciu:

  • 1 10 = 01 2
  • 3 10 = 11 2
  • 1 10 & 3 10 = 01 2 & 11 2 = 01 2
  • 1 10 | 3 10 = 01 2 | 11 2 = 11 2
  • 1 10 xor 3 10 \u003d 01 2 xor 11 2 \u003d 10 2

Pri spracovaní obrazu sa používajú 3 kanály na farbu: červená, modrá a zelená - plus transparentnosť, ktoré sú uložené v premennej typu int, pretože Každý kanál má rozsah hodnôt od 0 do 255. V 16-IRICH číselným systémom je určitá hodnota napísaná takto: 0x180013FF; Potom hodnota 18 16 zodpovedá červeného kanálu, 00 16 - modrá, 13 16 - zelená, FF-alfa kanáli (priehľadnosť). Ak chcete prideliť z takéhoto celočícha, špecifický kanál používa takzvaný. Maska, kde sú pozície záujmu F 16 alebo 1 2 na našich pozíciách. Tí. Ak chcete zvýrazniť hodnotu modrého kanálu, musíte použiť masku, t.j. Bitka a:

Int blue_channel \u003d 0x180013FF & 0x00FF0000;

Potom sa získaná hodnota posunula doprava na požadovaný počet bitov.

Bitwise posun posuny vľavo alebo priamo na toľko binárnych vypúšťaní čísla, ako je uvedené na pravej strane operácie. Napríklad číslo 39 pre typ char v binárnej forme je napísaný v nasledujúcom podobe: 00100111. Potom:

Char BINARYExample \u003d 39; // 00100111 Výsledok char \u003d BINARYExample<< 2; // сдвигаем 2 бита влево, результат: 10011100

Ak je premenná typu nepodpísaného, \u200b\u200bvýsledkom bude číslo 156, pre ikonické je -100. Všimnite si, že pre typy ikonických cieľov je jednotka v seniorovom vypúšťaní bitového zobrazenia znak počtu počtu. Zároveň sa hodnota v binárnej forme pozostáva zo všetkých jednotiek zodpovedá -1; Ak 1 len v staršom vypúšťaní a v ostatných výbojoch - nuly, má takéto číslo minimálnu hodnotu pre konkrétny typ hodnoty: pre char je -128.

2. Typ plávajúceho bodu (plavák, dvojitý (plavák))

Súprava hodnôt typu plávajúceho bodu je podmnožina reálnych čísel, ale nie každé reálne číslo je zastúpené v binárnej forme, ktorá niekedy vedie k hlúpe chybám:

Hodnota pláva \u003d 0,2; Hodnota \u003d\u003d 0,2; // Chyba, hodnota, ktorú nebude 0,2 tu.

Práca s premennými s plávajúcim bodom by programátor nemal používať prevádzku kontroly rovnosti alebo nerovnosti, namiesto toho zvyčajne používajú kontroly v určitom intervale:

Hodnota - 0,2.< 1e-6; // ok, подбирать интервал тоже нужно осторожно

Okrem porovnávacích operácií podporuje typ plávajúceho bodu 4 aritmetické operácie, ktoré sú plne spĺňajúce matematické operácie s reálnymi číslami.

3. BOOLEANOVÝ (LOGICKÝ) TYPY (BOOL)

Skladá sa len z dvoch hodnôt: true (true) a false. Ak chcete pracovať s premennými tohto typu, sa používajú logické operácie :! (Nie), \u003d\u003d (rovnosť),! \u003d (Nerovnosť), && (logické a), || (logické alebo). Výsledok každej operácie možno nájsť v príslušnej tabuľke pravdy. napr.

X y xor.0 0 0 0 1 1 1 0 1 1 1 0

4. Typ symbolu (CHAR, WCHCH_T)

Typ char je nielen celý typ (zvyčajne takýto typ sa nazýva bajt), ale aj znak, ktorý ukladá číslo znakov z tabuľky s symbolom ASCII. Napríklad kód 0x41 zodpovedá znaku "A" a 0x71 - 'T'.

Niekedy je potrebné použiť znaky, ktoré nie sú zakotvené v tabuľkách ASCII, a preto vyžaduje uskladnenie viac ako 1. bajt. Pre nich existuje široký symbol (wchar_t).

5.1. Polia

Polia vám umožňujú uložiť sekvenčnú sadu rovnakého typu prvkov. Pole sa uloží do pamäte nepretržitým blokom, takže pole nie je možné vyhlásiť bez zadania jeho veľkosti. Vyhlásiť pole po názve premennej píše štvorcové konzoly () označujúce jeho veľkosť. Napríklad:

Int myarray; // Array 5 prvkov celého typu

Na inicializáciu poľa sú hodnoty uvedené v kučeravých zátvorkách. Týmto spôsobom je možné inicializovať len počas vyhlásenia premennej. Mimochodom, v tomto prípade nie je potrebné špecifikovať veľkosť poľa:

Never custom \u003d (1, 3, 7, 9, 11); // pole inicializované 5. hodnotou

Ak chcete získať prístup k určitej hodnote v poli (prvok poľa), na označenie čísla prvku (čísla začínajú 0). Napríklad:

Kurzy; // Prístup k prvému prvku poľa. Vráti hodnotu 1 kurzov; // prístup k treťom prvku. Overuje hodnotu 7 kurz \u003d 13; // 5. prvok poľa priraďuje novú hodnotu kurzov; // Chyba prístupu

5.3. Reťazce

Ak chcete zaznamenať riadok, programátori používajú myšlienku, že reťazec je sekvenčný riadok (pole) znakov. Ak chcete identifikovať koniec reťazca, použite špeciálnu čiaru konca riadku: "0 '. Takéto špeciálne znaky pozostávajúce z reverznej lomky a identifikácie symbolu sa nazývajú kontrolné alebo únikové symboly. Stále existuje napríklad, n '- začiatok nového riadku,' T 'je tabuľka. Ak chcete nahrávať v reverznom lomku reťazec, sa tienenie používa - pred samotným znakom dal inú lomku: "". Skríning sa tiež používa na nahrávanie citácií.

Vytvorte variabilný reťazec:

Char TextExample \u003d ('T', 'e', \u200b\u200b's', 't', '0'); // riadok "test"

Existuje zjednodušený záznam inicializácie riadku:

Char TextExample \u003d "Test"; // Posledný znak nie je napísaný, ale veľkosť je stále 5

Bez toho, aby sme sa dostali do detailov, dávame ďalší užitočný typ dát - reťazec. Reťazce
Tento typ môže byť napríklad fold:

String Hello \u003d "Ahoj,"; Názov string \u003d "max!"; String Hello_name \u003d Hello + názov; // Získajte riadok "Ahoj, Max!"

6. odkaz

Int a \u003d 2; // premenná "A" označuje hodnotu 2 INT & B \u003d A; // premenná "B" označuje, kde a "A" b \u003d 4; // Zmena hodnoty B, programátor mení hodnotu a. Teraz A \u003d 4 Int & C \u003d 4; // Chyba, tak je to nemožné, pretože Odkaz nemôžete priradiť hodnotu

7. ukazovateľ

Na riešenie tohto typu údajov si musíte pamätať na to, že mnohé hodnoty tohto typu - adresa pamäťových buniek, kde začína údaje. Tiež ukazovateľ podporuje pridávanie operácií (+), odčítanie (-) a načítanie (*).

Adresy 0x0 znamená, že ukazovateľ je prázdny, t.j. Neuvádza žiadne údaje. Táto adresa má svoj vlastný literál - null:

Int * nullptr \u003d null; // prázdny ukazovateľ

Dodatok a odčítanie adries s celočíselným alebo inou adresou
Presun prostredníctvom pamäte dostupnej na program.

Prevádzka získavania údajov začínajúcich na adrese uloženej v ukazovateli sa nazýva Raming (*). Program číta požadovaný počet pamäťových buniek a vráti hodnotu uloženú v pamäti.

Int ValueInMemory \u003d 2; // Nastavte premennú celé číslo typu INT * SOMEPTR \u003d // Skopírujte adresu premennej, tu a vracia adresu variabilnej someptr; // adresa pamäťovej bunky, napríklad 0x2f * someptr; // Hodnota je uložená v 4 bunkách: 0x2F, 0x30, 0x31 a 0x32

Pre ukazovatele nie je operácia priradenia k dispozícii, ktorá syntakticky sa zhoduje s operáciou kopírovania. Inými slovami, môžete kopírovať adresu iného ukazovateľa alebo adresu premennej, ale na určenie hodnoty samotnej adresy nie je možná.

Samotný ukazovateľ je uložený v pamäti, ako aj hodnoty variabilných iných typov a zaberá 4 bajty, takže môžete vytvoriť ukazovateľ na ukazovateľ.

8. Výrobky

Vypočítavanie jediným základným typom nastaveným programátorom. Do zoznamu je podľa a veľká, je objednaná sada pomenovaných celočíselných konštánt a názov zoznamu bude základným typom.

Farba enum (červená, modrá, zelená);

V predvolenom nastavení, červená \u003d 0, modrá \u003d 1, zelená \u003d 2. Preto sa hodnoty môžu navzájom porovnať, t.j. Červený< BLUE < GREEN. Программист при объявлении перечисления может самостоятельно задать значения каждой из констант:

Prístup k enom (čítať \u003d 1, zápis \u003d 2, exec \u003d 4);

Často je vhodné použiť výpočty, ktorých hodnoty sú stupeň TWOS, pretože V binárnom reprezentácii bude počet 2-% stupňa pozostávať z 1. jednotky a nuly. Napríklad:

8 10 = 00001000 2

Výsledok pridania týchto počtov medzi sebou vždy jasne označuje, ktoré čísla boli:

37 10 = 00100101 2 = 00000001 2 + 00000100 2 + 00100000 2 = 1 10 + 4 10 + 32 10

Neplatný.

Typ syntaxu sa nevzťahuje na základné typy, ale môže sa používať len ako súčasť zložitejších typov, pretože Neplatné objekty neexistujú. Tento typ sa spravidla používa na informovanie, či funkcia nemá vrátenú hodnotu alebo ako základný typ ukazovateľa na objekty neistých typov:

Vlastný objekt; // Chyba, neexistujú žiadne objekty, ako napríklad neplatné prázdnota // chybovosť, nie je žiadny odkaz na neplatné * ptr; // OK, uložte ukazovateľ na neznámy typ

Často budeme používať prázdne, aby sme odkazovali na skutočnosť, že funkcia nevráti žiadnu hodnotu. Void indikátor funguje, keď programátor plne plní obavy o integritu pamäte a správny typ typu.

Odhodiť

Často je potrebné, aby hodnota premennej jedného typu na druhú. V prípade, že sada hodnôt zdrojového typu je podmnožina väčšieho typu (napríklad int, int je dlhá podskupina, a dlhé - dvojité), kompilátor je implicitne implicitne ( implicitne.) Zmeňte typ hodnoty.

InT celé číslo \u003d 2; Plavák plávajúce \u003d celé číslo; // Floating \u003d 2.0

Opačný typ typu bude doplnený stratou informácií, takže z čísla plávajúceho bodu zostane len celá časť zostane, stratí sa.

Transformácia typu typu CLEAR (EXPLIET), na to, aby ste to urobili, vľavo od premennej alebo akejkoľvek hodnoty typu zdroja v zátvorkách sú napísané typu, ku ktorému sa vykoná:

Hodnota \u003d (INT) 2,5;

Uničné a binárne operácie

Tieto operácie, ktoré sme boli vykonané skôr, sa nazývajú binárnym: vľavo a vpravo od prevádzkového symbolu sú hodnoty alebo premenné, napríklad 2 + 3. V programovacích jazykoch, okrem binárnych operácií tiež používajú unové operácie, ktoré sú aplikované na premenné. Môžu byť obaja na ľavej a pravej strane premennej, niekoľko takýchto operácií sa stretlo skôr - prechod pre prechod (*) a zachytávanie adresy premennej (&). Operátori "++" a "-" zvýšenie a zníženie hodnoty celej premennej o 1, resp. 1, môžu byť zapísané buď doľava alebo vpravo od premennej.

C ++ tiež aplikuje skrátené nahrávanie binárnych operácií v prípade, keď sa rovnaká premenná nachádza v ľavej a pravej časti výrazu, t.j. Akákoľvek operácia sa vykonáva s variabilnou hodnotou a výsledok operácie sa zadáva do tej istej premennej:

A + \u003d 2; // to isté ako A \u003d A + 2; b / \u003d 5; // to isté ako b \u003d b / 5; C & \u003d 3; // to isté ako c \u003d C & 3;

Okrem oddelenia údajov do premenných a konštanty existuje klasifikácia údajov podľa typu. Opis premenných je predovšetkým vo vyhlásení o ich typu. Typ údajov charakterizuje oblasť ich hodnôt a prezentačný formulár v pamäti počítača. Každý typ je charakterizovaný množinou operácií vykonávaných nad týmito operáciami. Tradične, v univerzálnych programovacích jazykoch existujú takéto štandardné typy ako celok, skutočné, symbolické a logické 3. Ihneď zaznamenávame, že v SI neexistuje žiadny logický typ. Výraz (v konkrétnom prípade, premenlivá) sa považuje za pravdivé, ak sa líši od nuly, inak sa považuje za nepravdivé.

Existencia dvoch číselných typov (celých a reálnych) je spojená s dvoma možnými formami reprezentujúcich čísel v pamäti počítača.

Dáta celý typuložené vo forme reprezentácie s pevným bodom. Vyznačuje sa absolútnou presnosťou prezentácie čísel a vykonávaním operácií nad nimi, ako aj obmedzený rozsah hodnôt čísel. Celý typ sa používa na údaje, ktoré v zásade nemôžu mať frakčnú časť (počet ľudí, strojov, atď, čísla a počítadlá).

Typ objektuzodpovedá forme reprezentácie čísel plávajúciPre ktoré sa charakterizujú približné zastúpenie čísla s daným počtom významných číslic (mantissa znakov) a veľkým rozsahom počtu počtu čísel, čo zaisťuje možnosť reprezentovať veľmi veľké a veľmi malé čísla v absolútnej hodnote. Vzhľadom na približné zastúpenie týchto údajov reálneho typu nesprávne porovnanie.

V moderných implementáciách univerzálnych programovacích jazykov existuje niekoľko celých čísel a niekoľko skutočných typov, z ktorých každý je charakterizovaný svojou veľkosťou priradenia na jednu hodnotu pamäte, a preto jeho rozsah hodnôt čísel, a pre skutočné typy - a jeho presnosť (počet čísel Mantissa).

Dáta symbolický typprevziať hodnoty na celej sade znakov prípustných pre tento počítač. Jeden bajt je daný na ukladanie jednej hodnoty znakov, kódovanie symbolu sa vykonáva v súlade so štandardnou kódovacou tabuľkou (Zvyčajne).

Existujú 4 základné typy:

char.- typ symbolu;

int.- celý typ

plavák- skutočný typ jednotnej presnosti,

dvojité.- skutočný typ dvojitej presnosti.

Špecifikovať použité deriváty kvalifikátory:krátky(krátke) - používa sa s typom int.,dlho.(dlhé) - používa sa s typmi int.a dvojité.;podpísané.(so znakom), nepodpísaný(Žiadne označenie) - Použiť na celý typ. V neprítomnosti údajov slov sa považuje za znamenie, t. e. Predvolená hodnota je akceptovaná. Tým, že prípustnosť ľubovoľného spojenia kvalifikátorov a základných titulov môže mať jeden typ niekoľko označení. Informácie o štandardných typoch SI sú prezentované v tabuľkách 1 a 2. Jednoduchá čiarka v bunkách prvého stĺpca uvedených synonymá.

Tabuľka 1. Štandardné typy údajov

Dátový typ

Rozsah hodnôt

char, podpísaný char

nepodpísaný int, nepodpísaný

int, podpísaný int, krátky int, krátke

2147483648...2147483647

Zaujímavé je, že v CHOP CHARTSE závislosť od kontextu môže byť použitý ako symbol alebo ako celý typ.

Tabuľka 2. Štandardné reálne typy údajov C

Komentár.Ak chcete napísať programy prvej časti príručky, budeme sa vyžadovať hlavne dva typy:plavák aint..