Tanulságok c, lecke s

H. lecke. Üzenetek megjelenítése a képernyőn

Az 1. és 2. leckében létrehozott összes C ++ program a kimeneti adatfolyamot használja a képernyőn megjelenő üzenetek megjelenítéséhez. Ebben a leckében cout karaktereket használhat karakterek, egész számok, például 1001 és lebegőpontos számok, például a 0.12345 karakterek kiadásához. A lecke végéig az alábbi alapkoncepciókat fogja elsajátítani:

  • Ha karaktereket és számokat akar megjeleníteni a képernyőre, használhatja a kimeneti stream cout-ot.
  • A C ++-ban speciális karaktereket használhat a cout segítségével, hogy megjelenjen egy fül vagy egy új vonal, és még a számítógép hangját is lejátszhatja.
  • A C ++-ban egyszerűen megjelenítheti a számokat tizedes, oktális (alap 8) vagy hexadecimális (alap 16) formátumban.
  • Az átrendező operátorok az operációs rendszer parancssorában átirányíthatják a képernyő kimenetére küldött program kimeneti üzenetét fájlra vagy nyomtatóra.
  • A kimeneti stream cerr használatával a programok üzeneteket küldhetnek a standard hibaeszközre, így nincs szükség a felhasználóknak az üzenetek átrendelésére.
  • Formázhatja a program kimenetét a kimeneti adatfolyamon belüli setw modifikátor segítségével.

A C + + -on létrehozott programok szinte mindegyike cout-ot használ a képernyőn megjelenő üzenetek megjelenítéséhez. Ebből a leckéből megtanulhatod, hogyan használjunk jobbat.

USE cout FOR NUMBERING

Eddig az általad létrehozott programok a karakterláncok (levelek és számok idézőjelekben) küldésére használtak. Most megtudhatja, hogy a szimbólumokat / számokat is felhasználhatja. Az alábbi 1001 program. A CPP 1001 számot jelenít meg a képernyőn:

Készítse el és futtassa ezt a programot. A képernyőn az alábbi 1001-es szám jelenik meg:

C: \> 1001

Az egész számok (tizedespont nélküli számok) megjelenítésén kívül a programokat is megjelenítheti lebegőpontos számok, pl. 1.2345. A következő FLOATING.CPP program a képernyő 0.12345-as számának megjelenítésére szolgál:

Mint korábban, fordítsd le és futtasd ezt a programot. A következő kimenet jelenik meg a képernyőn:

From: \> FLOATING

A többszörös értékek egyidejű megkötése

Mint már tudjuk, a dupla "kevésbé" jel egy beillesztési művelet (ez a művelet beilleszti a szimbólumokat a kimeneti adatfolyamba). A cout használatával több beillesztési műveletet is használhat egyetlen utasításon belül. Például a következő 1001TOPS.CPP program négyszer használja ezt a műveletet, hogy megjelenítse a 1001 számot a képernyőn:

A program összeállításakor és futtatásakor a következők jelennek meg a képernyőn:

C: \> 1001TOO

Minden alkalommal, amikor egy beillesztési művelet történik C ++-ban, a szám vagy karakterek egyszerűen hozzáadódnak azokhoz, amelyek jelenleg a kimeneti streamben vannak. A következő SHOW1001.CPP program a cout parancsot használva karakterláncot és számot ad ki:

<
cout <<"Мое любимое число равно " <<1001;
>

Ne feledje, hogy a szó után következő szóköz (az idézőjeleken belül) a 1001-es szám elválasztását teszi lehetővé. Szó nélkül a szám a következő szóval egyezik (1001-tel egyenlő). Hasonlóképpen a következő 1001MID.CPP program 1001-es számot jelenít meg a karakterlánc közepén:

<
cout <<"Число " <<1001 <<" мне очень нравится";
>

Mint korábban, figyeljen a 1001 szám előtt és után.

Végül a következő MIXMATCH.CPP program egyesíti a karakterláncokat, szimbólumokat, egész számokat és lebegőpontos számokat ugyanazon kimeneti streamen belül:

<
cout <<"B " <<20 <<" лет мой оклад был " <<493.34 <>

A program összeállításakor és futtatásakor a következő kimenet jelenik meg a képernyőn:

C: \> MIXMATCH

20 éves koromban a fizetés 493,34 volt

A KÖVETKEZTETÉSI SZIMBÓLUMOK HASZNÁLATA

Ha a kurzort a következő sor elejére szeretné mozgatni, újvonalas karaktert (\ n) tehet a kimeneti streamben. A C ++-ban két különböző módon hozhat létre új sort. Először betöltheti a \ n karaktereket egy karakterláncba. Például a következő TWOLINES.CPP program két sorban jeleníti meg a kimenetét, az újsor karakter használatával:

érvénytelen fő (üres)
<
cout <<"Это строка один\nЭто строка два";
>

A program fordítása és futtatása során az újsoros karakter két sorból indul ki, az alábbiak szerint:

C: \> TÉMÁK

Ez egyenes

Ha nem ad ki karakterláncot, akkor újvonalas karaktert helyezhet el egyetlen idézőjelbe. Például a következő program NEWLINES.CPP megjeleníti az 1., 0., 0. és 1. számot, mindegyik saját sorban:

érvénytelen fő (üres)
<
cout <<1 <<'\n' <<0 <<'\n' <<0 <<'\n' <<1;
>

Az újvonalas karakter használatán kívül a kurzort a következő sor elejére is mozgathatja, a programok használhatják a endl (vonal vége) karaktert. A következő ENDL.CPP program illusztrálja a endl használatát a kurzor új sor elejére történő mozgatásához:

<
cout <<"А теперь. " < <<"Учимся программировать на языке C++";
>

Mint korábban, amikor összeállítod és futtatod ezt a programot, a program kimenetét két sorban látod:

C: \> ENDL

Tanulás a C ++ programozásban

<
cout <<"Jamsa Press" < cout <<"2975 South Rainbow, Suite I" < cout <<"Las Vegas, NV 89102" <>

Egyéb speciális karakterek

Az újvonalas karakter mellett, amely lehetővé teszi a programok számára, hogy a kurzort egy új sor elejére mozgassa, használhatja a táblázatban szereplő speciális karaktereket. 3.1.

3.1. Táblázat. Speciális karakterek a cout használatához.

Egy hexadecimális érték, például \ xFFFF

Megjegyzés: Ha speciális karaktereket használ a táblázatban. 3.1-et, akkor ezeket a karaktereket önmagában használhatja, például "\ n" vagy kettős idézőjelben, ha egy stringen belül használja, például "\ nMup!".

A következő SPECIAL.CPP program speciális jelszimbólumokat (\ a) és füleket (\ t) használ fel a számítógép beépített hangszórójához, majd kiadja a "Csengőhang-hívás" szóval osztott szavakat:

<
cout <<"3вонок\a\tЗвонок\a\tЗвонок\a";
>

A TÖBB ÉS A SIX NUMERIKUS ÉRTÉKEK KÖVETKEZTETÉSE

A leckében bemutatott programok eddig decimális formában levonták a számokat. A programok céljától függően előfordulhat, hogy oktális vagy hexadecimális számokat kell kiadnia. Ehhez a módosítót dekódolni kell, dec, oct és hex a kimeneti streamen belül. Az OSTEH.CPP következő programja ezeket a módosítót a kimeneti értékeket tizedes-, oktális- és hexadecimális formában használja:

<
cout <<"Восьмеричный: " < cout <<"Шестнадцатеричный: " < cout <<"Десятичный: " <>

A program összeállításakor és futtatásakor a következő eredmény jelenik meg a képernyőn:

C: \> OCTEX

Oktális: 12 24

Hexadecimális: a 14

Tizedes: 10 20

Megjegyzés: Ha az egyik módosítót választja oktális, hexadecimális vagy tizedes kimenet kiválasztásához, a választása a program befejeződéséig vagy addig, amíg egy másik módosítót használ.

A HIBÁK SZABÁLYOZÓ KÉSZÜLÉKÉRT

Mint már tudjuk, a cout használatával átirányíthatja a program kimenetét egy eszközre vagy fájlra az operációs rendszer remapping operátorai segítségével. Ha azonban a programjai hibát észlelnek, valószínűleg nem szeretné, hogy a hibaüzenet átirányításra kerüljön a képernyőn. A hibaüzenetek átirányítása egy fájlba a felhasználó hibájából elrejtheti a hibát.

Ha a programnak hibaüzenetet kell megjelenítenie, használnia kell a kimeneti streamet cerr. A C ++ társítja a cerr-et a szabványos operációs rendszer hibaeszközzel. A következő CERR.CPP program a kimeneti streamet használja az "Ez az üzenet mindig megjelenik" üzenet megjelenítéséhez:

<
cerr <<"Это сообщение появляется всегда";
>

Készítse el és futtassa ezt a programot. Ezután próbálja átirányítani a program kimenetét egy fájlra a kimeneti remapping operátor segítségével:

C: \> CERR> FILENAME.EXT

Mivel az operációs rendszer nem teszi lehetővé a programoknak, hogy átirányítsák a standard hibaeszközre írt kimenetet, az üzenet megjelenik a képernyőn.

A KIBOCSÁTÁS SZABVÁNYA

Számos korábbi program megjelenített számokat a képernyőn. Annak érdekében, hogy ezek a számok helyesen jelenjenek meg (a megfelelő távolsággal), a programok tartalmaztak szóközöket a számok előtt és után. Cout vagy cerr kimenet esetén a programok meghatározhatják az egyes számok kimeneti szélességét a setw modifikátor használatával (szélesség beállítás). A setw programok segítségével jelezheti a szám által elfoglalt karakterek minimális számát. Például a következő SETW.CPP program a setw modifikátor használatával kiválasztja a 1001-es számot a 3., 4., 5. és 6. szélességhez. A setw modifikátor használatához a programnak tartalmaznia kell az iomanip.h fejlécfájlt:

<
cout <<"Мое любимое число равно" < cout <<"Мое любимое число равно" < cout <<"Мое любимое число равно" < cout <<"Мое любимое число равно" <>

A program összeállításakor és futtatásakor a következő kimenet jelenik meg a képernyőn:

C: \> SETW

Kedvenc számom 1001

Kedvenc számom 1001

Kedvenc számom 1001

Kedvenc számom 1001

Ha szélességet ad meg a setw-vel, megadhatja a szám által elfoglalt karakterpozíciók minimális számát. Az előző programban a setw (3) módosító legalább három karaktert tartalmazott. Azonban, mivel a 1001-es szám több mint három karaktert igényelt, a cout használt a tényleges összeget, amely ebben az esetben négy volt. Meg kell jegyezni, hogy amikor a szélessáv kiválasztásához használja a setw-t, a megadott szélesség csak egy szám megjelenítéséhez érvényes. Ha több számot kell megadnia, akkor többször is használnia kell a hálózatot.

Megjegyzés: Az előző program az IOMANIP.H fejlécfájlt használja. Lehet, hogy nyomtatni és meg kell vizsgálnia a fájl tartalmát. Az IOSTREAM.H fejlécfájlhoz hasonlóan ezt a fájlt az INCLUDE alkönyvtárban találja meg, amely a könyvtárban található a fordító fájljaival.

MIÉRT KELL TUDNI

Ebből a leckéből megtanult néhány módot a cout használatára, hogy megjelenítse a kimenetet a képernyőre. Minden könyvtárban létrehozott program a cout megjelenítésére szolgál. A 4. leckében megtudhatja, hogyan használhat változókat a programjaiban olyan értékek tárolására, amelyek változhatnak a program végrehajtása során. A 4. lecke előtt azonban győződjön meg róla, hogy elsajátította a következő alapvető fogalmakat:

    1. A kimeneti stream cout lehetővé teszi karakterek és számok kiadását.
    2. A kimeneti adatfolyamon belüli speciális szimbólumok használatával a program új vonalat, táblázatot és más speciális szolgáltatásokat adhat meg.
    3. Ha a kurzort a következő sor elejére kívánja mozgatni, a programok új sort hozhatnak létre a \ n karakter vagy az endl módosító segítségével.
    4. A dec, oct és hex modifikátorok lehetővé teszik a programok tizedes, oktális és hexadecimális értékek kimenetét.
    5. A kimeneti stream cerr használatával a programok üzeneteket írhatnak a szabványos operációs rendszer hibás eszközére.
    6. A setw modifikátor használatával a programok szabályozhatják a kimeneti számok szélességét.

Kapcsolódó cikkek