constants c
Preskúmajte všetko o konštantách v jazyku C ++ a ich typoch.
V tomto Jednoduché výukové kurzy pre C ++ , Premenné a rozsah premenných v C ++ sme si rozobrali v našom predchádzajúcom tutoriáli. Dozvedeli sme sa, že hodnotu priradenú premenným je možné meniť v celom programe.
Niekedy, v závislosti na našich požiadavkách, potrebujeme niektoré hodnoty, ktoré nie je možné v programe zmeniť alebo upraviť. Nemôžeme však zaručiť, že ak budú tieto hodnoty priradené premenným, nikto ich nezmení.
Je to tak preto, lebo vlastnosti samotnej variabilnej entity neumožnia konštantné hodnoty.
Čo sa dozviete:
Prehľad
V takýchto situáciách potrebujeme jednu entitu, ktorej môžeme priradiť hodnotu, ktorá zostane konštantná. Aj keď dôjde k pokusu o zmenu tejto hodnoty, kompilátor vygeneruje chybu. Táto entita sa nazýva konštantná / doslovná. Nazývajú sa tiež Symbolické konštanty, pretože pre tieto konštanty máme konkrétny názov.
Naproti tomu konštantné hodnoty, ktoré sú priradené premenným, sa nazývajú literálne konštanty. Konštanty môžu byť ľubovoľného dátového typu. S konštantami v C ++ sa zaobchádza rovnako ako s premennými, až na to, že sa ich hodnoty nemenia.
Dátové typy konštánt
V C ++ môžu byť konštanty ľubovoľného dátového typu. Všetko sú to „pomenované konštanty“, to znamená, že každá z týchto konštánt má svoje meno.
Nižšie sú uvedené typy konštánt v jazyku C ++:
# 1) Celé konštanty
Jedná sa o konštanty pozostávajúce z celých čísel bez desatinnej čiarky. K tomu môžeme mať spojené aj nejaké prípony v závislosti od toho, či je číslo podpísané alebo nepodpísané alebo dlhé atď.
Okrem toho môžu mať tieto konštanty iný základ alebo radix, napríklad desatinné, osmičkové alebo hexadecimálne. V tomto prípade zadáme predponu pre konštantu: 0 pre osmičkovú, 0x pre hexadecimálne atď. Nezadávame žiadnu predponu pre desatinné konštanty.
Ďalej uvádzame niekoľko príkladov platnej celočíselnej konštanty v jazyku C ++:
0512 // osmičkový
0xFF // hexadecimálne
technik technickej podpory pri pohovoroch, otázky a odpovede
36 // desatinné miesto
50L // dlhé
24U // nepodpísané
Upozorňujeme, že nemôžeme opakovať predponu alebo príponu ako 50UU, pretože tak bude konštanta neplatná.
# 2) Konštanty s pohyblivou rádovou čiarkou
Literály s pohyblivou rádovou čiarkou sú literály s desatinnou čiarkou. Tieto konštanty môžu byť vyjadrené v desatinnej alebo exponenciálnej podobe. Keď používame desatinnú notáciu, mala by obsahovať desatinnú čiarku, exponent alebo oboje.
Zastúpenie v exponenciálnom tvare by malo obsahovať celú časť, zlomok alebo obe. Mali by sme predstavovať podpísaný exponent pomocou e alebo E.
Niektoré príklady platných literálov s pohyblivou rádovou čiarkou sú:
3 142
3142E -5L
1 143
# 3) Literály znakov
Tieto literály majú typový charakter a sú zvyčajne uzavreté v jednoduchých úvodzovkách („“). Znakové literály začínajúce sa písmenom „L“ sú literály so širokým počtom znakov a sú uložené v type wchar_t (široký znak). Ostatné znakové literály sú uložené v znakovom dátovom type.
Široké znakové literály sa používajú väčšinou v programovaní GUI, ako je MFC alebo iné pokročilé programovanie vrátane STL.
Niekoľko príkladov literálov znakov:
„Xyz“
java programovacie otázky pre skúsených
L’M ‘
Vyššie uvedené príklady literálov znakov sú obyčajného charakteru. Existujú aj literály znakov známe ako „únikové sekvencie“, ktoré niektorým znakom dajú osobitný význam. Používajú sa na predstavenie akcií, ako sú znaky nového riadku, karty atď.
V nasledujúcej tabuľke je uvedený zoznam escape sekvencií použitých v C ++.
Úniková sekvencia | Význam |
---|---|
f | formfeed |
\ | znak |
‘ | ‘Charakter |
' | „Postava |
? | ? znak |
do | Zvonček alebo výstraha |
b | Backspace |
n | Nový riadok |
r | Návrat vozíka |
t | Karta vodorovne |
v | Zvislá karta |
ooo | Osmičkové číslo |
xhh ... | Šesťhranné číslo (jedna alebo viac číslic) |
Tieto únikové sekvencie sa používajú hlavne pri formátovaní v C ++ a dajú sa použiť ako kombinácia jednej alebo viacerých únikových sekvencií.
Nasledujúci program C ++ ukazuje použitie niektorých z týchto únikových sekvencií.
#include #include using namespace std; int main() { cout<<'
C++ program to demonstrate escape sequences'; cout<<'
Hello there 'STH''; }
Výkon:
Program v C ++ na demonštráciu únikových sekvencií
Ahojte, ‘STH’
Ako ukazuje vyššie uvedený kód, môžeme tieto únikové sekvencie použiť aj ako kombináciu na formátovanie výstupu.
# 4) Reťazec doslovný
Na rozdiel od znakových literálov sú reťazcové literály uzavreté v úvodzovkách („“). Reťazcové literály môžu obsahovať aj jednoduché znaky, riadiace sekvencie alebo iné univerzálne znaky.
Nasleduje niekoľko platných textových textov.
„Ahoj, svet“
'Ahoj, /
Svet “
„Hello“ „,“ „World“
Všetky vyššie uvedené príklady predstavujú rovnaký reťazec, ale sú znázornené rôznymi spôsobmi.
Okrem vyššie popísaných dátových typov literálov existujú aj booleovské literály, ktoré na vyjadrenie konštánt používajú kľúčové slová „true“ a „false“.
Definovanie konštánt
V C ++ máme dva spôsoby definovania konštánt:
# 1) Používanie smernice o predspracovaní „#define“
Konštanty môžeme definovať pomocou preprocesorovej smernice „#define“.
Nižšie je uvedený príklad.
#include #include #define PI 3.142 #define RADIUS 5 using namespace std; int main() { cout<<'
Area of circle: '< Výkon:
Plocha kruhu: 78,55
Obvod kruhu: 31,42
výhody linuxu oproti Windows 10
Vo vyššie uvedenom programe máme dve konštanty definované pomocou smernice „#define“, PI a RADIUS. Potom vo vnútri hlavnej funkcie vypočítame pomocou týchto konštánt plochu a obvod kruhu. Všimnite si použitie konštánt v programe.
# 2) Používanie kľúčového slova „const“
Ďalším spôsobom definovania konštánt je použitie kľúčového slova „const“ s deklaráciou premennej.
premenná typu const = hodnota;
Ak teda chceme definovať konštantu s názvom „RADIUS“, urobíme to takto:
const int RADIUS = 5;
Na vysvetlenie tohto typu konštantnej definície použijeme rovnaký program, ako je uvedené vyššie.
#include #include using namespace std; int main() { const float PI = 3.142; const int RADIUS = 5; cout<<'
Area of circle: '<Ako je zrejmé z tohto programu, pomocou kľúčového slova „const“ definujeme dve konštanty.
Vo vyššie uvedenom kóde sme definovali konštanty v hlavnej funkcii. Alternatívne môžeme tieto konštanty definovať aj globálne, predovšetkým nad všetky funkcie. V takom prípade budú mať tieto konštanty globálny rozsah a budú sa nazývať „Globálne konštanty“.
Poznámka: Ako je uvedené v obidvoch príkladoch programovania, je dobrým programovacím postupom definovať konštanty veľkými písmenami.
Záver
Týmto sa dostávame na koniec tohto tutoriálu o konštantách. Konštanty sú výhodné, keď chceme definovať určité matematické hodnoty, ktoré zostanú nezmenené.
V našom pripravovanom výučbe sa dozvieme o kvalifikátoroch typu C ++ a triedach ukladacích priestorov, ktoré nám umožnia definovať a používať premenné v rôznych rozsahoch.
=> Skontrolujte VŠETKY výukové programy pre C ++ tu
Odporúčané čítanie
- Zoznamy v STL
- MAPY V STK
- Prioritný front v STK
- Konštanty, operátory a prednosť operátorov vo VBScript
- SADA V STL
- Objekty súboru VBScript: CopyFile, DeleteFile, OpenTextFile, čítanie a zápis textového súboru
- Poradenstvo pri testovaní softvéru pre začínajúcich testerov
- Bublinové triedenie v C ++ s príkladmi