www.amapro.cz & David Bazala [Programování]

Otevře webové stránky AmaPro


Otevře hlavní stránku společnosti AmaPro
Internetové stránky určené pro studenty středních a vysokých odborných škol.


amapro.cz/odkazy Projekt eliminuje vyhledávání klíčových slov na komerčních stránkách a v e-schopech.



Nový projekt AmaPro

 

int

 

Je standardní příkaz Céčka, který se píše před názvem nové proměnné a říká překladači, aby alokoval v paměti místo pro uložení jednoho celého čísla typu int. Alokace je provedena pomocí 2 Byte na starších 16-ti bitových PC. Na novějších 32-bitových se již typ int ukládá pomocí rozkladu na 4 Byte. Hodnota proměnné typu int může tedy nabývat celých kladný a záporných hodnot od –2.147.483.648 do +2.147.483.647. Pro srovnání na 16-ti bitech se jedná jen o rozmezí od –32.768 do +32.767. Pro rozklad celého čísla je použitá jednoduchá metoda vyšších a nižších Byte.

 

Formát deklarace proměnné

 

int cislo;

 

Nastavuje proměnnou typu int s jedinečným názvem cislo pro programátora a překladač.

 

Co je důležité:

 

Překladač registruje název cislo, který musí být jedinečný. Prezentuje proměnnou int.

Překladač při spuštění programu nechá alokovat 4 adresy (4 Byte), kam se budou ukládat od –2.147.483.648 do +2.147.483.647.

Překladač zajistí programu požadavek informace o skutečné adrese prvního Byte ze 4 po sobě jdoucích adres.

POZNÁMKA: překladač není správný pojem, neboť při spuštění kompilovaného programu je mimo hru

 

Specifika int:

 

Při výpočtech s int, kdy výsledek by byl mimo rozsah od –2.147.483.648 do +2.147.483.647, nastává přetékání nejvyššího Byte určujícího int. Důsledkem této skutečnosti je výsledek sice celé číslo, ale špatné. Vždy může nabývat hodnot jen od –2.147.483.648 do +2.147.483.647. To si musí programátor ošetřit sám.

Lze vytvořit i pole int, které se deklaruje jako int m2[]= {1,2,3,4,5}. Pokud neurčíme počet prvků int, vypočítá je překladač dle počtu námi zadaných. Pole se skládá z Nx4Byte po sobě jdoucích adres v paměti, jejíž velikost již nelze zvětšit.

Pokud nezadáme při deklaraci počáteční hodnotu (to ale nemusíme), provede se jen alokace 4 adres v paměti a to bez jejich modifikace. Výsledná hodnota seskládaná z oněch 4 Byte nám dá nedefinovatelnou hodnotu. Proto je dobré již při deklaraci nastavit např. na 0.

Existuje i speciální typ pro int, který je v rozmezí od 0 do 4.294.967.295, označován jako usigned int.

 

 

 

int cislo1;                                             //alokuje a neinicializuje 4 Byte pro int

int cislo2=356;                                    //alokuje a inicializuje 4 Byte pro int

int cislo3;                                             //alokuje a neinicializuje 4 Byte pro int

int m1[5];                                            //alokuje a neinicializuje 5 x 4 Byte

int m2[]= {1,2,3,4,5};                         //alokuje a inicializuje Byte(N vypočítá překl.) x 4 Byte

int m3[5]={6,7,8};                  //alokuje 5x4 Byte a inicializuje 3 x 4 Byte

cislo3=456;                                         //nastavuje již alokované 4 Byte pro int

cout<<cislo1<<endl;                           //náhodné číslo

cout<<cislo2<<endl;                           //356

cout<<cislo3<<endl;                           //456

cout<<m1[0]<<m1[1]<<m1[2]<<m1[3]<<m1[4]<<endl;  //náhodná čísla

cout<<m2[0]<<m2[1]<<m2[2]<<m2[3]<<m2[4]<<endl;  //12345

cout<<m3[0]<<m3[1]<<m3[2]<<m3[3]<<m3[4]<<endl;  //678nahodná čísla

getchar();                                            //čekání na entr

return 0;                                              //opuštění konzolové aplikace

 

Program deklaruje tři proměnné typu int a tři množiny (pole int) prvků int. Cislo1 a cislo3 je pouze alokováno, tedy bez modifikace jeho 4Byte, které ho popisují. Což následně cout převede na obrazovku jako nějaké číslo. Cislo2 alokuje v paměti 4Byte a ještě je nastaví dle přepočtu na 0/0/1/101. Za běhu programu je cislo3 nastaveno na hodnotu 456, což způsobí nastavení 4Byte na 0/0/1/201. Při deklaraci množiny m1 je zadán parametr 5, který říká překladači aby dimenzoval pole pro 5 int, což představuje 5x4Byte. Dojde k alokaci paměti a to bez modifikace obsahů paměťových buněk. Cout potom vypíše náhodná čísla na obrazovku. Deklarace množiny m2 je provedena bez zadání parametru, ale je uveden výčet hodnot int. Dle jejich počtu překladač automaticky vypočte potřebné místo pro alokaci paměti. To pak již nelze zvětšit. Uvedené hodnoty také modifikují alokovanou paměť. Cout vypíše námi uvedené hodnoty int. Deklarace množiny m3 je dána výčtem prvků a počtem prvků 5. Překladač alokuje paměť pro 5 int, ale modifikuje pouze 3x4 Byte. Počet uvedených prvků nesmí být větší než počet deklarovaných. Do cout vstupuje ukazatel na první Byte pro jednotlivé int. Cout ví, že je na 32-ti bitovém PC a že pro správnou interpretaci hodnoty int použije ještě následující 3 Byte.

 

 



Abecední seznam všech článků Vyhledání pojmů ve článcích




JavaScript - ukázky
Příklady užití některých často používaných efektů na stránky.
katalogy/javascript
Weby o programování
Odkazy na velké servery o programování a vývoji SW
odkazy/programovani
Mikropočítače
Seznámení s obecnou problematikou počítačů a mikropočítačů.
programovani/mikropocitace
CSS html vlasnosti
Přehled CSS vlastností pro tvorbu webu
datove_zdroje/stranky/css
Mikropočítače a jejich programování
Nízká forma programování, assembler a struktura procesorů.
knihy/mikropocitace/obsah_mikro1.php
Hybridní počítače
Počítače, jejichž základem je standardní analogová počítací síť.
knihy/hybridni_pocitace
Objektové programování c++
Jazyk C, Objektové programování c++
internet/katalog_programovani_c
Programování PHP
Články o programování webových stránek pomocí PHP.
internet/katalog_programovani_php
Databáze ikon
Ikony a malé obrázky pro tlačítka či jiné použití
datove_zdroje/icony/icony.php
Otevře stránky Fulltextové vyhledávání na celém serveru
Digitalizované odborné knihy
Velká encyklopedie pojmů a zkratek
Česko - anglicko - německý technický slovník
Klasický katalog firem, služeb a stránek
OnLine překladač  vět a textů (nepoužívá Google)
Stránky pro chvíle oddechu od studia, relaxace
Katalog českých firem dle technologií
Internetový odkazník
Otevře hlavní stranu pro oddíl programování




 Wikipedie   Seznam stránek   Kapitoly témat   Významné servery   Klíčová slova 








Otevře hlavní stranu společnosti AmaPro

Všechna práva vyhrazena. Určeno jen pro osobní využití. Bez předchozího písemného souhlasu správce www.amapro.cz je zakázána jakákoli další publikace, přetištění nebo distribuce jakéhokoli materiálu nebo části materiálu zveřejněného na www.amapro.cz a to včetně šíření prostřednictvím elektronické pošty. Články, jejichž přímým autorem není amapro.cz lze publikovat pouze se souhlasem jejich majitelů či administrátoru příslušného webu.