constants c
Poznaj wszystko o stałych w C ++ wraz z ich typami.
W tym Łatwe samouczki szkoleniowe C ++ , omówiliśmy zmienne i zakres zmiennych w C ++ w naszym poprzednim samouczku. Dowiedzieliśmy się, że wartości przypisane do zmiennych można zmieniać w całym programie.
pl sql wywiad pytania i odpowiedzi pdf
Czasami, w zależności od naszych wymagań, potrzebujemy wartości, których nie można zmienić ani zmodyfikować w programie. Nie możemy jednak zagwarantować, że jeśli te wartości zostaną przypisane do zmiennych, nikt nie zmieni wartości tych zmiennych.
Dzieje się tak, ponieważ cechy samej jednostki zmiennej nie pozwolą, aby wartości były stałe.
Czego się nauczysz:
Przegląd
W takich sytuacjach potrzebujemy jednego podmiotu, któremu możemy przypisać wartość, która pozostanie stała. Nawet jeśli podejmie próbę zmiany tej wartości, kompilator wygeneruje błąd. Ta jednostka jest nazywana stałą / literalną. Nazywa się je również stałymi symbolicznymi, ponieważ mamy szczególną nazwę dla tych stałych.
Natomiast stałe wartości przypisane do zmiennych nazywane są stałymi dosłownymi. Stałe mogą mieć dowolny typ danych. Stałe w C ++ są traktowane w taki sam sposób jak zmienne, z tą różnicą, że ich wartości się nie zmieniają.
Typy danych stałych
W C ++ stałe mogą mieć dowolny typ danych. Wszystkie są „stałymi nazwanymi”, tj. Każda z tych stałych ma nazwę.
Poniżej wymieniono typy stałych w C ++:
# 1) Stałe całkowite
Są to stałe składające się z liczb całkowitych bez kropki dziesiętnej. Możemy również mieć skojarzone z nim sufiksy w zależności od tego, czy numer jest ze znakiem, czy bez znaku, czy długi itp.
Ponadto te stałe mogą mieć inną podstawę lub podstawę, na przykład dziesiętną, ósemkową lub szesnastkową. W tym przypadku podajemy przedrostek do stałej: 0 dla liczby ósemkowej, 0x dla szesnastkowej itd. Nie podajemy przedrostka dla stałych dziesiętnych.
Poniżej podano kilka przykładów prawidłowych stałych liczb całkowitych w C ++:
0512 // ósemkowe
0xFF // szesnastkowo
36 // dziesiętny
50L // długi
24U // bez znaku
Należy pamiętać, że nie możemy powtórzyć przedrostka lub sufiksu, takiego jak 50UU, ponieważ spowoduje to, że stała będzie nieważna.
# 2) Stałe zmiennoprzecinkowe
Literały zmiennoprzecinkowe to literały z kropką dziesiętną. Te stałe mogą być przedstawiane w postaci dziesiętnej lub wykładniczej. Kiedy używamy notacji dziesiętnej, powinna zawierać kropkę dziesiętną, wykładnik lub oba.
Reprezentacja postaci wykładniczej powinna obejmować część całkowitą, ułamek lub oba. Podpisany wykładnik powinniśmy reprezentować przez e lub E.
Oto kilka przykładów prawidłowych literałów zmiennoprzecinkowych:
3,142
3142E -5L
1,143
# 3) Literały postaci
Te literały są typu znakowego i zwykle są ujęte w pojedyncze cudzysłowy („”). Literały znakowe rozpoczynające się od „L” są literałami szerokoznakowymi i są przechowywane w typie wchar_t (znak szeroki). Inne literały znakowe są przechowywane w postaci danych znakowych.
Literały szerokich znaków są używane głównie w programowaniu GUI, takim jak MFC lub innym zaawansowanym programowaniu, w tym STL.
Oto kilka przykładów literałów znakowych:
„Xyz”
L'M ”
Powyższe przykłady literałów znakowych to zwykły znak. Istnieją również literały znaków znane jako „sekwencje specjalne”, które nadają specjalne znaczenie kilku znakom. Są używane do reprezentowania działań, takich jak znaki nowej linii, tabulatory itp.
Poniższa tabela zawiera sekwencje specjalne używane w C ++.
Sekwencja ewakuacyjna | Znaczenie |
---|---|
fa | formfeed |
\ | postać |
” | ' postać |
' | ' postać |
? | ? postać |
do | Dzwonek lub alert |
b | Backspace |
n | Nowa linia |
r | Powrót karetki |
t | Tabulator poziomy |
v | Zakładka pionowa |
ooo | Liczba ósemkowa |
xhh ... | Numer szesnastkowy (jedna lub więcej cyfr) |
Te sekwencje specjalne są używane głównie podczas formatowania w C ++ i mogą być używane jako kombinacja jednej lub więcej sekwencji specjalnych.
Poniższy program w C ++ pokazuje użycie niektórych z tych sekwencji ucieczki.
#include #include using namespace std; int main() { cout<<'
C++ program to demonstrate escape sequences'; cout<<'
Hello there 'STH''; }
Wynik:
Program w C ++ do demonstrowania sekwencji ucieczki
Witam „STH”
Jak pokazuje powyższy kod, możemy użyć tych sekwencji ucieczki jako kombinacji, a także sformatować dane wyjściowe.
# 4) Dosłowny ciąg znaków
W przeciwieństwie do literałów znakowych, literały łańcuchowe są ujęte w podwójne cudzysłowy („”). Literały łańcuchowe mogą również zawierać proste znaki, sekwencje ucieczki lub inne znaki uniwersalne.
anime tv wszystko za darmo
Poniżej przedstawiono niektóre z prawidłowych literałów ciągów.
'Witaj świecie'
'Cześć, /
Świat'
'Witaj świecie'
Wszystkie powyższe przykłady przedstawiają ten sam ciąg, ale są reprezentowane na różne sposoby.
Oprócz typów danych literałów opisanych powyżej, mamy również literały boolowskie, które używają słów kluczowych „prawda” i „fałsz” do reprezentowania stałych.
Definiowanie stałych
W C ++ mamy dwa sposoby definiowania stałych:
# 1) Korzystanie z dyrektywy preprocesora „#define”
Możemy zdefiniować stałe za pomocą dyrektywy preprocesora „#define”.
Przykład jest pokazany poniżej.
#include #include #define PI 3.142 #define RADIUS 5 using namespace std; int main() { cout<<'
Area of circle: '< Wynik:
Pole koła: 78,55
Obwód koła: 31,42
W powyższym programie mamy dwie stałe zdefiniowane za pomocą dyrektywy „#define”, PI i RADIUS. Następnie w funkcji głównej obliczamy pole i obwód koła za pomocą tych stałych. Zwróć uwagę na użycie stałych w programie.
# 2) Używanie słowa kluczowego „const”
Innym sposobem definiowania stałych jest użycie słowa kluczowego „const” z deklaracją zmiennej.
zmienna typu const = wartość;
Jeśli więc chcemy zdefiniować stałą o nazwie „RADIUS”, robimy to w następujący sposób:
const int RADIUS = 5;
W celu wyjaśnienia tego typu definicji stałych użyjemy tego samego programu, co powyżej.
#include #include using namespace std; int main() { const float PI = 3.142; const int RADIUS = 5; cout<<'
Area of circle: '<Jak pokazano w tym programie, definiujemy dwie stałe za pomocą słowa kluczowego „const”.
W powyższym kodzie zdefiniowaliśmy stałe w funkcji głównej. Alternatywnie możemy również zdefiniować te stałe globalnie, przede wszystkim funkcje. W takim przypadku te stałe będą miały zasięg globalny i będą nazywane „stałymi globalnymi”.
Uwaga: Jak pokazano w obu przykładach programowania, dobrą praktyką programowania jest definiowanie stałych za pomocą WIELKICH LITER.
Wniosek
W ten sposób dochodzimy do końca tego samouczka dotyczącego stałych. Stałe są korzystne, gdy chcemy zdefiniować pewne wartości matematyczne, które pozostają niezmienione.
W naszym nadchodzącym samouczku dowiemy się o kwalifikatorach typu C ++ i klasach pamięci, które pozwolą nam definiować i używać zmiennych w różnych zakresach.
=> Sprawdź WSZYSTKIE samouczki C ++ tutaj
rekomendowane lektury
- Listy w STL
- MAPY W STL
- Kolejka priorytetowa w STL
- Stałe, operatory i pierwszeństwo operatorów w VBScript
- ZESTAW W STL
- Obiekty plików VBScript: CopyFile, DeleteFile, OpenTextFile, odczyt i zapis pliku tekstowego
- Porady dotyczące testowania oprogramowania dla początkujących testerów
- Sortuj bąbelkowe w C ++ z przykładami