Ennen danimi riippumatta siitä, onko tiedot esitetty, ne esitetään siten, että voit automatisoida valinnan, valinnan ja käsittelyn vaalitarkkailussa (numerot, symbolit, numerot ja numerot).
Ohjelman tiedot voivat olla vapaapäiviä(määritetty ohjelman syötössä) tai tulosten käsittelyä(prom_zhnimi chi vih_dnimi).
Usі danі - zminnі ja vakiot - ovat laulutyypin kanssa.
Näiden sidosten ihotyypille arvoalue(tavumäärä pid one -arvo), joka sallittuja operaatioita.
Tietotyypit C/C++ jaetaan pääі Lähde pois.
Päätyyppeihin asti ovat:
tietotyyppi | Arvoalue | Rozmir |
---|---|---|
hiiltyä | -128...+127 | 1 tavu |
allekirjoittamaton merkki | 0...255 | 1 tavu |
allekirjoitettu char | -128...127 | 1 tavu |
tietotyyppi | Arvoalue | Rozmir (tavu) |
---|---|---|
int allekirjoitettu int allekirjoitettu pitkä int |
-2147483648 ... 2147483647 | 4 |
allekirjoittamaton int allekirjoittamaton pitkä välit |
0 ... 4294967295 | 4 |
lyhyt int allekirjoitettu lyhyt int |
-32768 ... 32767 | 2 |
allekirjoittamaton lyhyt väliv | 0... 65535 | 2 |
pitkä pitkä int | \(-(2^{63}-1)...(2^{63}-1)\) | 8 |
allekirjoittamaton pitkä pitkä int |
\(0...(2^{64}-1)\) | 8 |
tietotyyppi | Arvoalue | Rozmir (tavu) |
---|---|---|
kellua | 3,4E-38 ... 3,4E+38 | 4 |
kaksinkertainen | 1.7E-308... 1.7E+308 | 8 |
pitkä tupla | 3.4E-4932 ... 3.4E+4932 | 10 |
Tunnisteet: Muutoksen kanssa. char, int, unsigned, long, long long, float, double, long double, long float, leksikaalinen scoping. Zminnykhin ääni. Näkyvyyden laajuus. Muutosten alustaminen. Muutosten nimet. eksponenttimuoto.
Muutokset ovat voittajia arvon säilyttämiseksi (sic!). Muutokselle on ominaista nimen tyyppi. Aloitetaan nimestä. Muutos voidaan aloittaa vakuutuksesta tai kirjaimista, mutta ei numerosta. Muutos voi sisältää symboleja Englannin aakkoset, numerot ja merkki. Muutos ei ole syyllinen zbіgatisyaan avainsanoilla (nämä ovat erikoissanoja, kuten ne on kirjoitettu kuten avainrakenteita, tietyille tyypeille jne.)
auto | kaksinkertainen | int | struct |
tauko | muu | pitkä | vaihtaa |
rekisteröidy | typedef | hiiltyä | ulkoinen |
palata | mitätön | tapaus | kellua |
allekirjoittamaton | oletuksena | varten | allekirjoitettu |
liitto | tehdä | jos | koko |
haihtuvia | jatkaa | enum | lyhyt | sillä aikaa | linjassa |
Esimerkiksi oikeat tunnisteet
a, _, _1_, Sarkasm, a_long_variable, aLongVariable, var19, defaultX, char_type
väärä
1a, $arvo, a-pitkä-arvo, lyhyt
Si - rekisteröity kieli. Muutokset nimillä a ja A, tai end ja END tai perfectDark ja PerfectDarK - kaikki muutokset.
Vaihda tyyppiä
hiiltyä<= short <= int <= long <= long long
Yllä oleva arvo koskee VC2012-kääntäjää 32-bittisessä koneessa. Joten jos ohjelmasi on valehdella maailman muutoksessa, älä kysy muutoksesta.
Lasketaan nyt maksimi- ja vähimmäismäärä, jotta voimme säästää ihotyypin muutoksen. Numerot voivat olla sekä positiivisia että negatiivisia. Negatiiviset luvut saavat yhden bitin etumerkkisäästön. Joskus merkki on tarpeen (esim. ota pankkitili purkista, lämpötila, koordinaatti myös), jos ei ole tarvetta toiselle (vaga, taulukon laajennus, ihmisten ikä on liian laiha). ). Jolle kaikki voittaa, muuntaja, jonka tyyppi on allekirjoitettu ja allekirjoittamaton. etumerkitön merkki - kaikki 8 bittiä numeroina, samalla voit kirjoittaa numeroita välillä 00000000 - 11111111 tuplaa varten, sitten 0 - 255 etumerkillistä merkkiä -128 - 128. Merkintämerkki ja etumerkki vastaavat tätä.
Tyyppi | Rozmir, tavu | Minimiarvo | Suurin arvo |
---|---|---|---|
allekirjoittamaton merkki | 1 | 0 | 255 |
allekirjoitettu char (hiiltyä) |
1 | -128 | 127 |
allekirjoittamaton lyhyt | 2 | 0 | 65535 |
allekirjoitettu lyhyesti (lyhyt) |
2 | -32768 | 32767 |
allekirjoittamaton int (allekirjoittamaton) |
4 | 0 | 4294967296 |
allekirjoitettu int (int) |
4 | -2147483648 | 2147483647 |
allekirjoittamaton pitkä | 4 | 0 | 4294967296 |
allekirjoitettu pitkään (pitkä) |
4 | -2147483648 | 2147483647 |
allekirjoittamaton pitkä pitkä | 8 | 0 | 18446744073709551615 |
allekirjoitettu pitkä pitkä (pitkä pitkä) |
8 | -9223372036854775808 | 9223372036854775807 |
Siinä on operaattori, jonka avulla voit ottaa muutoksen tavuina. sizeof on vaihdettavissa, tai sizeof(changeable) tai sizeof(type). Tämä on sama operaattori, joten funktio ei voi ottaa pois tietoa tyypin laajennuksesta ohjelman lopussa. Kirjoitetaan pieni ohjelma vaihtaaksesi maailmojen välillä.
#sisältää
(Mielestäni on selvää, että muutos voi olla kelvollinen nimi). Voit kirjoittaa ohjelman yksinkertaisemmalla tavalla
#sisältää
Samalla tyypillä voi olla äidin nimi
lyhyt === lyhyt int
pitkä === pitkä int
pitkä pitkä === pitkä pitkä int
unsigned int === unsigned
Сі ei ole yhdenmukainen muutoksen uudelleenjärjestyksen kanssa. Tse tarkoittaa, että arvoa nostetaan pysyvästi, sanotaan muuttamalla tyyppiä int "skinemo-arvon" avulla.
#sisältää
Vzagali, käyttäytyminen muutoksen korvaamisen yhteydessä määritetään vain tyypille allekirjoittamaton: Unsigned value skin Muille tyypeille se voi olla mahdollista, ja koska sinun on kiinnitettävä huomiota uudelleenkirjoittamiseen, työskennellä manuaalisesti, pereviryayuchi-argumentit tai muita tapoja valehdella kääntäjän ja prosessorin arkkitehtuurissa.
Numeroiden kanssa työskennellessä on mahdollista ilmoittaa selvästi numerotyyppi, esimerkiksi lisäkirjaimille, esim.
Edistyvä koodi ei kuitenkaan johda anteeksiantamiseen, mikä johtaa tyypin implisiittiseen muutokseen.
Inta = 10u; kaksinkertainen g = 3.f;
Numeroiden kanssa työskentelytunnin alla voit laatia kunnianosoituksen kuudestoista ja kahdeksastoista muotoa. Kuudennentoista lukujärjestelmän luvut alkavat 0x:stä, ylimmän järjestelmän nollasta. On selvää, että jos luku alkaa nollasta, se ei ole syyllinen numeroihin, jotka ovat suurempia kuin 7:
#sisältää
Annetun luvun eksponentiaalista muotoa kutsutaan annetuksi luvuksi näkymässä M e ± p, de M- Mantis numero, s- Vaihe kymmenen. Kun tsimu mantis voi olla yksi nollasta poikkeava merkki ennen kymmentä koomaa.
Esimerkiksi 1,25 === 1,25e0, 123,5 === 1,235e2, 0,0002341 === 2,341e-4 jne.
Antamalla 3.2435e7 vastaa 3.2435e+7
Іsnuє y іnshe yavlennya ("іinzhenerne"), missä vaiheessa voi olla triytsien monikerta. Esimerkiksi 1,25 === 1,25e0, 123,5 === 123,5e0, 0,0002341 === 234,1e-6, 0,25873256 === 258,73256e-3 jne.
Kaikki muutokset ovat järkyttyneitä lohkoon
<возвращаемый тип> <имя функции> (<тип> <аргумент>[, <тип> <аргумент>])
Kun muutos ilmaistaan, se on kirjoitettu її tyyppi, että im'ya.
int a; kaksoisparametri;
Voit äänestää samantyyppistä kilohailia jakamalla kooman nimet
Pitkä pitkä arg1, arg2, arg3;
Esimerkiksi
#sisältää
Muutokset esitetään täällä aі b toiminnon keskellä pää, tuo muutos z syklin rungon keskellä. Seuraava koodi, joka aiheuttaa anteeksipyynnön
int main() ( int i; i = 10; int j; )
Tästä syystä muutoksen ilmoittaminen maksaa toimeksiantooperaattorin jälkeen. Korovia muutosten sattuessa voit alustaa ne välittömästi.
int i = 0;
Jos alustus tehdään, kun muutos ilmaistaan, operaattori ei kunnioita sitä, niin seuraava koodi on pracyuvatime
int main() ( int i = 10; int j; )
On myös tärkeää muistaa, että järjestelmän muutoksia ei aloiteta nolilla, kuten monissa muissa kieliohjelmissa. Muutoksen panettelun jälkeen heiltä otetaan pois "lyönti" - vipadkove-merkitys, joka katosi muistipiiristä, kun bula nähtiin muutoksen alla. Tämä johtuu meistä robottiohjelmien optimoinnin edessä: jos alustusta ei tarvita, niin ei ole mitään käytettävää resursseja nollien kirjoittamiseen (kunnioitus: globaalit muutokset alustetaan nolilla, miksi niin lue tästä statt i:stä) .
#sisältää
Kuinka katsoa ohjelmaa VC:llä
Run-Time Check Failure #3 - Muuttuja "i" on käytössä ilman alustusta.
Jos painat "Prodovzhiti", ohjelma näyttää "smіttya". Muille kääntäjille ohjelma ei ole edellä aikaa.
Muuttujat ovat paikallisia (äänitetty keskellä funktiona) ja globaaleja. Globaali muutos näkyy kaikille tässä tiedostossa ilmaistuille funktioille. Paikallista muutosta ympäröi sen näkyvyysalue. Jos näytän, että se on muutettu "muistomerkki jossain paikassa", se tarkoittaa, että missä paikassa se nimitettiin ja її voit voittaa. Katsotaanpa esimerkiksi ohjelmaa, jolloin globaali muutos
#sisältää
Nähdään
foo: 100
baari: 333
Tässä on globaali muutos maailmanlaajuisesti näkyy kaikille toiminnoille. Jos funktion argumentti korvaa globaalin muutoksen, kun argumentti 333 hyväksytään, paikallinen arvo 333 näytetään.
Axis inshey butt
#sisältää
Vivede-ohjelma 555. Joten, kuten viime vuosikymmenellä, paikallisesti muuttunut "tärkeäksi". Muuttunut, tyrmistynyt näkyvyyden laulualueella, se ei näy hänen takaansa, esim.
#sisältää
Kenen persettä ei ole koottu, enemmän muutosta yіsnuє vähemmän kuin lohkosi keskellä.
Jos vaihdat peräaukeen akselia, goloshenі lohkon keskellä, peitä yksi
#sisältää
Vivede ohjelma
30
20
10
Globaalin muutoksen jäljet ovat ainutlaatuisia. Usein voi tuntea samoin. Yritetään selvittää miksi. Yksinkertaisissa projekteissa globaalit muutokset näyttävät täysin normaaleilta. Ale osoittaa, että sinulla on lisäys, joka
Ensinnäkin sitä muutetaan globaalisti, koska se on kaikkien nähtävillä, se voidaan muuttaa jollain ohjelman osalla. Muutit globaalin muutoksen, haluat kirjoittaa sen muistiin, ja toinen osa ohjelmaa on jo ylikirjoittanut muut arvot siinä (itse asiassa on olemassa koko joukko ongelmia, joita syytetään rikkaasta suoratoistomediasta) . Toisella tavalla suurilla mitoilla projekti ei seuraa, kuka tahansa loi globaalit muutokset. Lisää peppuja näkemällä on selvää, että muutokset voivat vääntää toisiaan, ne itse näkyvät hienossa projektissa.
Mielettömästi nämä tilanteet, jos ohjelmaan tehdään globaaleja muutoksia, mutta sellaisia ei ole usein eikä kotitehtävissäsi, niin ÄLÄ LUO GLOBAALIA MUUTOKSET!
Muutokset eivät voi olla vain suuria ja niillä voi olla liukuluku. Іsnuє persoonaton muut tyypit, yakі mi vvchatimemo nadali.
cel-tyyppi (int)
Rosmariinityyppi int ei erotu standardina, vaan se on tietokoneen ja kääntäjän muodossa.
Jos kyseessä on 16-bittinen prosessori, syötä jokaiselle tyypille 2 tavua,
32-bittisille - 4 tavua.
Tarkentaja lyhyt ennen im'yam-tyyppiä kerro kääntäjälle, että luvun tulee olla 2 tavua prosessorin kapasiteetista riippumatta.
Tarkentaja pitkä tarkoittaa, että arvo on 4 tavua.
Siten 16-bittisessä tietokoneessa int ja short int,
ja 32-bittisessä - int ja long int.
Sisäinen ulkonäkö koko tyypin arvot - kaksoiskoodin kokonaisluku. Määrittelijää valittaessa allekirjoitettu luvun merkittävin bitti tulkitaan etumerkiksi (0 - positiivinen luku, 1 - negatiivinen). Tarkentaja allekirjoittamaton voit esittää vain positiivisia lukuja, korkeimman luokan sirpaleet hyväksytään osaksi numeron koodia. Että. tyypin int alueen arvo kuuluu määritteiden tyyppiin. IBM PC-sum -tietokoneiden kokonaislukutyypin arvojen alue erilaisilla määritteillä on ilmoitettu taulukossa "Yksinkertaisten tietotyyppien arvoalue".
Muuten, kaikki kokonaislukutyypit katsotaan allekirjoitetuiksi, joten etumerkillinen määrittäjä voidaan jättää pois.
Vakiot, kuten ohjelmankin, määrätään samaan tyyppiin niiden tyypistä riippuen. Jostain syystä ohjelmoija ei hallitse, voit erikseen määrittää vaaditun tyypin lisäliitteille L, l (pitkä) ja U, u (allekirjoittamaton). Esimerkiksi vakio 32L on tyyppiä pitkä ja kestää 4 tavua. Voit muuttaa jälkiliitteitä L ja U samanaikaisesti, esimerkiksi 0x22UL tai 05Lu.
Huomautus. Tyyppi short int, long int, signed int ja unsigned int voidaan lyhentää lyhyeksi, pitkäksi, signetuksi ja allekirjoittamattomaksi, tietenkin.
Merkkityyppi (merkki)
Merkkityypin arvoksi syötä tavujen määrä, joka riittää mahduttamaan minkä tahansa merkistön tietylle tietokoneelle, mikä oli hämmentävää tyypin nimen suhteen. Yleensä yksi tavu. Tyyppi char, kuten ja іnshі tsіlі tyypit, voivat olla sekä merkki että merkki. Etumerkittömille arvoille voit ottaa arvon välillä -128 - 127. Jos etumerkitön määrite on erilainen, voit ottaa arvot välillä 0 - 255. Mikä riittää ottamaan minkä tahansa merkin arvosta 256- ASCII-merkkisarja. Char-tyypin arvot voidaan tallentaa myös kokonaislukuina.
Laajennuksen merkkityyppi (wchar_t)
Tyyppi wchar_t tehtävät roboteille, joissa on joukko symboleja, joiden koodaukseen 1 tavu ei riitä. Esimerkiksi Unicode. Rozmіr tsgogo pudota vіd realіzatsії; pääsääntöisesti viinityyppi shortsit. Wchar_t-tyypin rivivakiot kirjoitetaan L-etuliitteellä, esimerkiksi L Gates.
Boolen tyyppi (bool)
Boolen arvot voivat ottaa useamman kuin yhden arvon tottaі vääräє varatut sanat. Väärän arvon sisäinen muoto on 0 (nolla). Tulkitaanko arvo todeksi vai ei. Muunnettaessa koko tyyppiä totta suurin arvo on 1.
Float-tyyppi (kelluke, tupla ja pitkä tupla)
C++-standardi määrittelee kolme tietotyyppiä puhearvojen tallentamista varten: float, double ja long double.
Tietotyypit, joissa on liukuluku, tallennetaan muistista, muuten pienemmät kokonaisluvut. Puhenumeron sisäinen ilmentymä koostuu kahdesta osasta - mantisiі Tilaus.
IBM PC-mad -tietokoneissa kokotyyppi kellua vievät 4 tavua, josta tulee yksi kaksoispurkaus pіd mantis merkki, 8 luokkaa harmittaa ta 23 mantis alla. Mantissa - kokonaisluku, suurempi kuin 1,0 ja pienempi kuin 2,0. Oskіlki vanhempi hahmo mantisi zavzhdi dorivnyu 1, sinut pelastetaan.
Tyyppiarvoille kaksinkertainen, jos se vie 8 tavua, järjestys ja mantis tulee syöttää 11 ja 52 riviin asianmukaisesti. Mantin pituus ilmaisee numeron tarkkuuden ja tilauksen pituus sen kantaman. Kuinka on mahdollista työskennellä viimeisen tietueen taulukoiden kanssa, joilla on sama tavumäärä, joka syötetään tyypin float ja long int arvon mukaan, niiden sallittujen arvojen alue vaihtelee suuresti sisäisen hakulomakkeen kautta.
Tarkentaja pitkä ennen kuin olen tyyppiä kaksinkertainen osoittaa, että 10 tavua on syötettävä.
Liukulukuvakiot voivat olla geneerisiä double-tyyppisiä. Voit määrittää vakion tyypin apuliitteiden F, f (float) ja L, l (pitkä) takana.
Esimerkiksi vakio 2E+6L on tyyppiä long double ja vakio 1.82f on tyyppiä float.
Kirjoitettaessa ohjelmia, jotka ovat universaaleja eri alustoille, ei ole mahdollista sallia tyypin laajentamista int. Otrimannylle on tarpeen muuntaa operaation koko, jonka tulos on tyypin koko tavuina.
Esimerkiksi MS-DOS-käyttöjärjestelmässä sizeof(int) johtaisi 2:een ja Windows 98:ssa tai OS/2:ssa 4.
ANSI-standardissa päätyyppien alueita ei ole asetettu, vain kokojen väliset erot ilmoitetaan, esim.
koko (kelluke) ≤ slzeof (double) ≤ koko (pitkä tupla)
koko(char) ≤ slzeof(lyhyt) ≤ sizeof(int) ≤ koko(pitkä)
Huomautus. Vähimmäis- ja enimmäisarvot tietyille tyypeille
tyhjä tyyppi
Crym resurrected, tyyppi void lisätään elokuvan päätyyppeihin, mutta tyhjän merkitys on persoonaton. Vіn vykorivovuєtsya varten vyznachennya funktsiy, yak ei muunna arvoja, lisätäksesi tyhjän argumenttiluettelon toimintoon perustyypiksi mielenosoittajille ja toiminnan valettu tyyppi.
Erilaisia puhetyyppejä, jotka määräytyvät tietojen esittämisen laajuuden ja tarkkuuden mukaan, otetaan käyttöön, jotta ohjelmoija voisi tehokkaimmin valita tietyn laitteen kyvyn, niiden obsyag-muistin määrän. Se on kuitenkin optimoitu minkä tahansa tyyppisten ohjelmien tietokoneille, jotka eivät välttämättä ole siirrettävissä muille alustoille, koska talletukset ovat ainutlaatuisia tietotyyppien erityisominaisuuksissa.
Tyyppi | Arvoalue | Rozmir (tavu) |
bool | totta ja tarua | |
allekirjoitettu char | -128 … 127 | |
allekirjoittamaton merkki | 0 … 255 | |
allekirjoitettu lyhyt int | -32 768 … 32 767 | |
allekirjoittamaton lyhyt väliv | 0 … 65 535 | |
allekirjoitettu pitkä int | -2 147 483 648 … 2 147 483 647 | |
allekirjoittamaton pitkä välit | 0 … 4 294 967 295 | |
kellua | 3,4e-38 … 3,4e+38 | |
kaksinkertainen | 1,7e-308 … 1,7C+308 | |
pitkä tupla | 3,4e-4932 … 3,4e+4932 |
Ohjelman rakenne
C++-ohjelmani koostuu toimintoja, kuvausі esikäsittelyohjeita. Yksi tehtävistä johtuu nimen äidistä pää. Ohjelma alkaa tämän toiminnon ensimmäisellä operaattorilla. Yksinkertaisin funktio voi olla seuraavassa muodossa:
Pääsääntöisesti funktio valitaan jonkin arvon laskemiseen, joten ennen funktion nimeä ilmoitetaan sen tyyppi. Alla on tärkeimmät tiedot toiminnoista:
Esimerkki ohjelmarakenteesta, joka korvaa pää-, fl- ja f2-funktiot:
Ohjelma voidaan taittaa kilosta moduulit(Ulkoiset tiedostot).
C++:n johdannon/vision kunnioittaminen
Movі C++:lla ei ole syöttö-/tulostusominaisuuksia - sitä käytetään lisätoimintoihin, tyyppeihin ja objekteihin, jotka löytyvät vakiokirjastoista.
On kaksi tapaa voittaa: funktiot, elokuvan poisto, C++-objektit.
Esittelyn / näytön päätoiminnot tyylillä C:
int scanf (const char * muoto, ...) // Johdanto
int printf(const char* muoto, ...) // visnovok
Haju on muotoiltu ja suuren määrän arvojen käyttöönotto on samanlainen kuin muotomuodon järjestys. Useita muotoja voidaan korvata merkeillä, jotka kopioidaan nykyiseen (näytöllä) näyttöön, tai niitä pyydetään virrasta (näppäimistöltä) syöttäessäsi tuon muunnosmäärityksen, joka alkaa %:lla. merkki, joka syötettynä korvataan tietyillä arvoilla.
Ohjelman takapuoli viktoriaanisena johdannon / tulosteen funktiona tyylillä C:
#sisältää
int main() (
int i;
printf("Anna kokonaisluku\n");
scanf("%d", &i);
printf("Kirjoitit numeron %d, mikä!", i);
paluu 0;
}
Ohjelman ensimmäinen rivi on esiprosessorin käsky, jonka jälkeen ohjelman tekstiin lisätään otsikkotiedosto ohjelman toimintojen muunnelmien kuvauksen poistamiseksi syöttöä/tulostusta varten (tällaisille kutov-kaareille kuten elokuvaelementti). Kaikki esiprosessorin käskyt alkavat #-merkillä.
Kolmas rivi on kuvaus muuttuvasta koko nimityypistä i.
Neljännen rivin printf-funktio näyttää pyynnön "Syötä kokonaisluku" ja siirtyy uudelle riville keruvane \n -sekvenssin mukaan. Scanf-toiminto syöttää näppäimistöltä syötetyn numeron muutokseen i (&-merkki tarkoittaa osoitteen poistotoimintoa), ja seuraava operaattori näyttää rivin näytöllä, joka korvaa muunnosmäärityksen numeron arvolla.
Ohjelma, jossa on C++-luokkien kirjastokirjasto:
#sisältää
int main() (
int i;
cout<< "Введите целое число\n"; cin >> i;
cout<< "Вы ввели число " << i << ", спасибо!";
paluu 0;
}
Otsikkotiedosto sisältää kuvauksen luokkien joukosta syötteen/tulosteen välittämistä varten. Uudelle on määritetty vakioobjektivirrat. cin näppäimistön syöttöä varten cout näytölle näyttämistä varten sekä pottiin sijoitettuja toimintoja varten< < и чтения из потока >>.
Syötteen organisointitapoja on mahdollista muokata, mutta niitä ei suositella muuttamaan yhdessä ohjelmassa.
lyhyt int , unsigned short int , int , unsigned int , long , unsigned long .
float, double, long double.
char (signed char), unsigned char, wchar_t.
bool.
enum.
C++:ssa on tärkeimmät kokonaislukutietotyypit: short int, unsigned short int, int, unsigned int, long (long int), unsigned long (signed long int).
Qi-tyyppiset tiedot edustavat lukujen kertoimen arvoa. Esimerkiksi:
2 -100 398Tietotyypit, jotka perustuvat etumerkittömiin etuliitteisiin, voidaan korvata vain positiivisilla luvuilla.
Tiedot, joiden tyyppi on short int, unsigned short int, vie muistista puolet vähemmän tilaa kuin tiedot, joiden tyyppi on int, unsigned int.
Kun kirjoitetaan pitkä, etumerkitön pitkä vie kaksi kertaa enemmän muistitilaa, vähemmän kuin kirjoitetaan int, unsigned int.
Tämän seurauksena muutin x näet muistissa paikan, jonka koko on 4 tavua. Rozmіr mem'yati, scho vіdіlyаєєєєєєєєєєєє pod zmіnnu, zalezhі vіd vіd tietokoneen ominaisuudet, käyttöjärjestelmän tyyppi ja nastuvan-kääntäjä.
Jolle on valittu osoitusoperaattori, jota merkitään symbolilla =.
Ehdotus 1. Numeron syöttäminen muuttuu kuvauksen jälkeen.
intx; x = 239;Ehdotus 2. Syötä muutoksen päivämäärä pіd tunti її kuvaus (pochatkova іnіtsіalіzаtsіya).
int x = 239;Tietotyypit kelluvalla pallolla antavat sinun esittää reaalilukujen kertoimen arvon. Esimerkiksi:
8.35 -990.399 239.0.C++:ssa on samat perusliukulukutietotyypit: float, double, long double.
Vaihdettu tuplatyyppiin lainaa 2 kertaa enemmän tilaa tietokoneen muistiin, pienempi muutos float-tyyppiin.
Myös pitkän kaksoistyypin vaihtaminen lainaa kaksi tilaa lisää tietokoneen muistista, pienempi kaksoistyypin vaihtaminen.
Esimerkki kuvauksesta vaihtuvista tyypeistä float, double, long double:
kellua f; kaksinkertainen d; pitkä kaksinkertainen ld;Esimerkki numeeristen tietojen syöttämisestä tyypin vaihtamiseksi kelluvalla klodilla:
float f = -9928,45; // Pochatkova alustus kaksinkertainen d; pitkä kaksinkertainen ld; d = 0,445332; // tehtäväoperaattori ld = 3892923898239.030903; // tehtäväoperaattoriKenelle kirjoitustoiminto suoritetaan. Temppeleissä on ilmoitettava sen tyypin nimi, jolle nimi annetaan.
kellua a; intb; a = 8457; b = (int) a; // b = 8Aina kun toimintoja suoritetaan, tyypit on suojattava, koska ne ovat tipin päällä, koska ne vievät vähemmän tilaa tietokoneen muistista.
Esimerkiksi tyypin short int muuttaminen voi edustaa pienempää numeroaluetta, pienempi muuttuva tyyppi float, double. Etenevän listauksen on järjestettävä muutostyypin short int arvo uudelleen:
lyhyt int i; kellua f; f = 3990099,8; i = (int)f; // i = -7597 - reflowEsimerkki suorasta int:stä tuplaan:
int i; kaksinkertainen d; i = 982; d = (kaksois) i; // d = 982,0Merkkityypille annetaan näppäimistöltä syötetyn koodin merkkiarvot. Symbolin є koodi on kokonaisluku.
Esimerkiksi merkin f koodi on 102 .
Osa koodista, jossa symbolin koodi lasketaan:
intcode; merkki symboli; symboli = "f"; koodi = (int)symboli; // koodi = 102Annettu kirjoittaa char samoilla kokonaisluvuilla. Tietotyyppi char ottaa 1 tavun tietokoneen muistista.
Spivvіdshennja symbolikoodi sijaitsee Windowsin symbolitaulukoissa. Symbolit, joiden koodit ovat 0-127 - nämä ovat BIOS-symboleja, jotka on varattu. Niihin kuuluvat yleisimmät symbolit, numerosymbolit, latinalaisten aakkosten symbolit. Qi-symboleita ei voi muuttaa.
Symbolit, joiden koodit ovat 128–255, ovat alueellisia symboleja, jotka on sidottu tiettyyn sen tietokoneen tablettiin, johon Windows-käyttöjärjestelmä on asennettu.
Bool-tyypin muutoksilla voi olla vain kaksi arvoa:
totta
false on hölynpölyä.
Muutosten määrät ovat voitollisia loogisten säkeiden uudelleentarkistuksessa. Numeerinen arvo tosi on 1. Numeerinen arvo false on 0.
Koodinpätkä, joka arvioi arvoksi tosi ja epätosi:
int tulos; bool b; tulos = (int) tosi; // tulos = 1 b = epätosi; tulos = (int)b; //tulos = 0Koodinpätkä, joka muuntaa int:n ja floatin booliksi:
int i; kellua f; bool b; i = 6; b = (bool) i; // b = Totta f = 0,0; b = (bool) f; //b = FalseJolle win operaatio sizeof().
Koodin fragmentti, joka määrittää tietyntyyppisten tietojen laajentamisen:
int d; d = koko(char); // d = 1 d = sizeof(unsigned int); // d = 4 d = koko(kelluke); // d = 4 d = sizeof(double); // d = 8NET Framework -kirjaston muuttujatyypin suurimman sallitun tai pienimmän sallitun arvon määrittämiseen käytetään MaxValue- ja MinValue-arvoja.
Käytä eri tyyppien raja-arvojen merkintää.
Muutetulle tyypille int:
// kirjoita int int i; pitkä MaxInt; pitkä MinInt; MaxInt = (pitkä) i.MaxArvo; // MaxInt = 2147483647 MinInt = (pitkä) i.MinArvo; // MinInt = -2147483648Muutostyypeille short int :
// kirjoita lyhyt int lyhyt int si; int MaxInt; int MinInt; MaxInt = (int) si.MaxValue; // MaxInt = 32767 MinInt = (int) si.MinValue; // MinInt = -32768Muutostyypeille unsigned int :
// kirjoita unsigned int allekirjoittamaton intui; allekirjoittamaton int MaxInt; allekirjoittamaton int MinInt; MaxInt = ui.MaxValue; // MaxInt = 4294967295 MinInt = ui.MinValue; // MinInt = 0Uimurityyppien vaihtaminen:
// kelluva tyyppi kellua f; kellua MaxF; kellua MinF; Max F = f. MaxValue; // MaxF = 3,402823E+38 MinF = f.MinArvo; // MinF = -3,402823E+38Muutetulle tuplatyypille:
// kaksoistyyppi kaksinkertainen d; kaksinkertainen MaxD; double MinD; Max = d. MaxValue; // Max = 1,79769313486232E+308 Min = d. MinValue; // Minimi = -1,79769313486232E+308Merkkityyppien vaihtaminen:
// kirjoita char char c; int MaxC; int MinC; Max = (int) c. MaxValue; // Max = 127 Min = (int) c.MinArvo; // Min = -128Enum-tyyppi ei ole tietotyyppi. Uudelle on määritetty muistoarvot kokonaisluvun kertoimelle. Ihon muistomerkitys voi olla laulettava zmist ja є kokonaisluku.
Esimerkki enum-tyypin muunnelmasta vuoden kuukausien tunnistamiseen:
enum-kuukaudet (tammi, helmikuu, maaliskuu, huhtikuu, toukokuu, kesäkuu, heinäkuu, elokuu, syyskuu, lokakuu, marraskuu, joulukuu) mn; mn = tammikuu; // mn = 0 mn = maaliskuu; // mn = 2 mn = syyskuu; // mn = 8Terävälle peräpuolelle muutos on kuvattu enum months -tyypin nimille mn. Kuukausien muistoarvot (tammikuu, helmikuu, …) alkavat 0:sta (0, 1, 2, …). Tammikuun muistoarvo vastaa arvoa 0, helmikuun muistoarvo vastaa arvoa 1 ja niin edelleen.
Ohjelman tekstin enum-tyypin avuksi voit myös muuttaa tuloskoodin lyhyen terminologian muistomerkintöjä.
Voit kirjoittaa sen näin:
mn = (kuukausien lukumäärä)2; // mn = maaliskuu mn = (kuukausien lukumäärä)11; // mn = joulukuuTietotyyppi void voittaa seuraavissa tyypeissä:
peppu. MyFun()-funktio ilman parametreja, jolloin se kääntää minkä tahansa arvon (kääntää tyypin void ) ja ottaa parametreja.
julkinen: void MyFun(void) { // Toimintokappale // ... palata; // Kierrä funktiosta, joten älä kierrä arvoja } // viikoittainen toiminto ohjelmasta ... Minun hauskani(); ...Se ei ole mahdollista, koska void-tyyppi ei sido arvoja.
Goloshennya zminnoy tyyppi mitätön tuottaa ennen anteeksiantoa kokoelma vysnovkom podomlennya:
"Void-tyypin laiton käyttö"Merkkityypin muutokset (katso eteenpäin) muutetaan 8-bittisten ASCII-merkkien tallentamiseksi.
Tyyppi wchar_t on valittu tallentamaan merkkejä, kun ne kasvavat suuriin merkistöihin. Esimerkiksi kiinalaisessa aakkosessa on suuri määrä symboleja. 8 riviä ei riitä paljastamaan kiinalaisten aakkosten koko merkkisarjaa. Siksi, koska on välttämätöntä voittaa ohjelma kansainvälisillä markkinoilla, korvaa char-tyyppi wchar_t:lla.
peppu wchar_t-alatyyppi.
... wchar_tt; // muutokselle t 2 tavua muistia näkyy t = "s"; ...Yksimerkkinen tyyppi vie 1 tavun (8 bittiä) muistia ja mahdollistaa sen käytön binäärilukujärjestelmässä 2^8 arvo = 256. Char-tyyppiä voidaan käyttää sekä positiivisille että negatiivisille arvoille. Arvon muutosalue on -128 - 127.
Toinen uchar-tyyppi vie myös 1 tavun muistiin, kuten char-tyyppi, mutta toisaalta ucharilla ei ole enää positiivisia arvoja. Pienin arvo on nolla, suurin arvo on 255. Ensimmäinen kirjain u uchar-tyypin nimessä on lyhenne sanasta unsigned (unsigned).
Tsiliy-tyyppinen lyhyt ma' -rosir 2 syötti (16 bittiä) I, vidpovly, sallittu viralich-tieto arvo on välillä -32768 ja 32767.
Merkitön lyhyt tyyppi on ushort-tyyppi, jonka koko on myös 2 tavua. Pienin arvo on 0, suurin arvo on 65535.
Kokonaislukutyyppi int voi olla 4 tavua (32 bittiä). Pienin arvo on -2147483648, suurin arvo on 2147483647.
Etumerkitön kokonaislukutyyppinen uint vie muistista 4 tavua ja mahdollistaa kokonaislukuarvojen muuttamisen 0:sta 4294967295:een.
Solutyypin pituus voi olla 8 tavua (64 bittiä). Pienin arvo on 9223372036854775808, suurin arvo on 9223372036854775807.
Ulong-solutyyppi vie myös 8 tavua ja mahdollistaa arvon tallentamisen välillä 0 - 18446744073709551615.
Käytä:
char ch = 12; |
Etumerkittömien lukujen sirpaleita ei tunnisteta negatiivisten arvojen ottamiseksi. Negatiivisen arvon asettaminen voi johtaa epäjohdonmukaisuuksiin. Tällaisen viattoman käsikirjoituksen akseli pelkistettiin pysähtymättömäksi sykliksi:
Se tulee olemaan oikein näin:
Tulos:
Ch = -128 u_ch = 128 |