W C literały są stałymi wartościami przypisanymi do zmiennych. Literały reprezentują stałe wartości, których nie można modyfikować. Literały zawierają pamięć, ale nie mają referencji jako zmiennych. Ogólnie rzecz biorąc, oba terminy, stałe i literały są używane zamiennie.
Na przykład const int = 5;, jest wyrażeniem stałym, a wartość 5 jest określana jako stały literał całkowity.
Rodzaje literałów C
W C istnieją 4 typy literałów:
- Literał całkowity
- Dosłowne pływanie
- Dosłowność znakowa
- Dosłowny ciąg
1. Literały całkowite
Literały całkowite służą do reprezentowania i przechowywania wyłącznie wartości całkowitych. Literały całkowite są wyrażane w dwóch typach, tj.
A) Przedrostki: Przedrostek literału całkowitego wskazuje podstawę, w której należy go odczytać.
Na przykład:
0x10 = 16
Ponieważ prefiks 0x reprezentuje bazę szesnastkową. Zatem 10 w systemie szesnastkowym to 16 w systemie dziesiętnym. Stąd wartość 16.
Zasadniczo są reprezentowane w 4 typach:
A. Litera dziesiętna (podstawa 10): A niezerowa cyfra dziesiętna po którym następuje zero lub więcej cyfr dziesiętnych (0, 1, 2, 3, 4, 5, 6, 7, 8, 9).
Przykład:
Ciągi znaków połączone w Javie
56, 78>
B. Literal ósemkowy (podstawa 8): A 0 po którym następuje zero lub więcej cyfr ósemkowych (0, 1, 2, 3, 4, 5, 6, 7).
Przykład:
045, 076, 06210>
C. Literał szesnastkowy (podstawa 16): 0x Lub 0X po której następuje jedna lub więcej cyfr szesnastkowych (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, A, b, B, c, C, d, D, e, E, f, F).
Przykład:
0x23A, 0Xb4C, 0xFEA>
D. Literał binarny (podstawa 2): 0b Lub 0B po którym następuje jedna lub więcej cyfr binarnych (0, 1).
Przykład:
0b101, 0B111>
B) Przyrostki: Przedrostek literału całkowitego wskazuje typ, w jakim ma być on odczytany.
Na przykład:
12345678901234LL
„abc” w liczbachwskazuje długą, długą wartość całkowitą 12345678901234 ze względu na przyrostek LL
Są one reprezentowane na wiele sposobów, w zależności od ich typów danych.
- int: Nie jest wymagany żaden przyrostek, ponieważ stała całkowita jest domyślnie przypisana jako typ danych int.
- bez znaku int: znak u lub U na końcu stałej całkowitej.
- długi int: znak l lub L na końcu stałej całkowitej.
- unsigned long int: znak ul lub UL na końcu stałej całkowitej.
- długi, długi, int: znak ll lub LL na końcu stałej całkowitej.
- unsigned long long int: znak ull lub ULL na końcu stałej całkowitej.
Przykład:
C
#include> int> main()> {> > // constant integer literal> > const> int> intVal = 10;> > printf> (> 'Integer Literal:%d
'> , intVal);> > return> 0;> }> |
>
>Wyjście
Integer Literal:10>
2. Literały zmiennoprzecinkowe
Służą do przedstawiania i przechowywania liczb rzeczywistych. Liczba rzeczywista składa się z części całkowitej, części rzeczywistej, części ułamkowej i części wykładniczej. Literały zmiennoprzecinkowe można przechowywać w postaci dziesiętnej lub wykładniczej. Reprezentując liczby zmiennoprzecinkowe, należy pamiętać o dwóch rzeczach, aby uzyskać prawidłowy literał:
- W postaci dziesiętnej należy uwzględnić część całkowitą, część ułamkową lub obie, w przeciwnym razie spowoduje to błąd.
- W formie wykładniczej należy uwzględnić zarówno część znaczącą, jak i wykładniczą, w przeciwnym razie doprowadzi to do błędu.
Poniżej pokazano kilka dosłownych reprezentacji zmiennoprzecinkowych:
Prawidłowe literały pływające:
10.125 1.215e-10L 10.5E-3>
Nieprawidłowe literały pływające:
123E 1250f 0.e879>
Przykład:
C
#include> int> main()> {> > // constant float literal> > const> float> floatVal = 4.14;> > printf> (> 'Floating point literal: %.2f
'> ,> > floatVal);> > return> 0;> }> |
numpy sumowanie
>
>Wyjście
Floating point literal: 4.14>
3. Literały znakowe
Odnosi się to do literału używanego do przechowywania pojedynczego znaku w pojedynczym cudzysłowie. Aby przechowywać wiele znaków, należy użyć tablicy znaków. Przechowywanie więcej niż jednego znaku w pojedynczym cudzysłowie spowoduje wyświetlenie ostrzeżenia i wyświetlenie tylko ostatniego znaku literału. Prowadzi to do dwóch następujących reprezentacji:
- typ znaku: Służy do przechowywania normalnych literałów znakowych lub literałów o wąskich znakach.
Przykład:
char chr = 'G';>
Przykład:
programowanie w tablicach C
C
#include> int> main()> {> > // constant char literal> > const> char> charVal => 'A'> ;> > printf> (> 'Character Literal: %c
'> ,> > charVal);> > return> 0;> }> |
>
>
Wyjście:
Character Literal: A>
Sekwencje ewakuacyjne : Istnieją różne znaki specjalne, których można używać do wykonywania różnych operacji.
4. Literały łańcuchowe
Literały łańcuchowe są podobne do literałów znakowych, z tą różnicą, że mogą przechowywać wiele znaków i używają podwójnego cudzysłowu do przechowywania tego samego. Może także zawierać znaki specjalne i sekwencje specjalne wymienione w powyższej tabeli. Możemy podzielić długą linię na wiele linii za pomocą literału łańcuchowego i oddzielić je za pomocą białych spacji.
Przykład:
char stringVal[] = 'techcodeview.com';>
Przykład:
C
#include> int> main()> {> > const> char> str[]> > => 'Welcome
To
Geeks For Geeks'> ;> > printf> (> '%s'> , str);> > return> 0;> }> |
centos kontra redhat
>
>
Wyjście:
Welcome To Geeks For Geeks>
Musisz przeczytać:
- Literały zdefiniowane przez użytkownika
- Surowy literał ciągu w C++
- Literały ósemkowe w C
- Literały złożone w C
- Różnica typów literałów znakowych C++