În C, literalele sunt valorile constante care sunt atribuite variabilelor. Literale reprezintă valori fixe care nu pot fi modificate. Literalele conțin memorie, dar nu au referințe ca variabile. În general, ambii termeni, constante și literali sunt folosiți interschimbabil.
De exemplu, const int = 5;, este o expresie constantă, iar valoarea 5 este denumită un literal întreg constant.
Tipuri de C literale
Există 4 tipuri de literal în C:
- Literal întreg
- Literal plutitor
- Caracter Literal
- String Literal

1. Literale întregi
Literale întregi sunt folosite pentru a reprezenta și stoca numai valorile întregi. Literale întregi sunt exprimate în două tipuri, adică
A) Prefixe: Prefixul literalului întreg indică baza în care urmează să fie citit.
De exemplu:
0x10 = 16
Deoarece prefixul 0x reprezintă o bază HexaDecimală. Deci 10 în HexaDecimal este 16 în Decimal. De aici valoarea 16.
Practic sunt reprezentate în 4 tipuri:
A. Decimal-literal (baza 10): A cifră zecimală diferită de zero urmat de zero sau mai multe cifre zecimale (0, 1, 2, 3, 4, 5, 6, 7, 8, 9).
Exemplu:
java are următorul
56, 78>
b. Octal-literal (baza 8): A 0 urmat de zero sau mai multe cifre octale (0, 1, 2, 3, 4, 5, 6, 7).
Exemplu:
045, 076, 06210>
c. Hex-literal (baza 16): 0x sau 0X urmat de una sau mai multe cifre hexazecimale (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, A, b, B, c, C, d, D, e, E, f, F).
Exemplu:
0x23A, 0Xb4C, 0xFEA>
d. Binar-literal (baza 2): 0b sau 0B urmat de una sau mai multe cifre binare (0, 1).
Exemplu:
0b101, 0B111>
B) Sufixe: Prefixul literalului întreg indică tipul în care urmează să fie citit.
De exemplu:
12345678901234LL
indică o valoare întregă lungă 12345678901234 din cauza sufixului LL
Acestea sunt reprezentate în multe feluri în funcție de tipurile lor de date.
- int: Nu este necesar niciun sufix deoarece constanta întreg este atribuită implicit ca tip de date int.
- unsigned int: caracterul u sau U la sfârșitul unei constante întregi.
- long int: caracterul l sau L la sfârșitul unei constante întregi.
- unsigned long int: caracterul ul sau UL la sfârșitul unei constante întregi.
- long long int: caracterul ll sau LL la sfârșitul unei constante întregi.
- unsigned long long int: caracterul ull sau ULL la sfârșitul unei constante întregi.
Exemplu:
C
șir în int java
#include> int> main()> {> >// constant integer literal> >const> int> intVal = 10;> >printf>(>'Integer Literal:%d
'>, intVal);> >return> 0;> }> |
>
>Ieșire
Integer Literal:10>
2. Literale în virgulă mobilă
Acestea sunt folosite pentru a reprezenta și stoca numere reale. Numărul real are o parte întreagă, o parte reală, o parte fracțională și o parte exponențială. Literale în virgulă mobilă pot fi stocate fie în formă zecimală, fie în formă exponențială. În timp ce reprezentați zecimale cu virgulă mobilă, trebuie să aveți în vedere două lucruri pentru a produce un literal valid:
- În forma zecimală, trebuie să includeți partea întreagă, sau partea fracțională, sau ambele, altfel, va duce la o eroare.
- În forma exponențială, trebuie să includeți atât partea semnificantă, cât și partea exponențială, în caz contrar, va duce la o eroare.
Câteva reprezentări literale în virgulă mobilă sunt prezentate mai jos:
Literale flotante valide:
10.125 1.215e-10L 10.5E-3>
Literale flotante nevalide:
123E 1250f 0.e879>
Exemplu:
C
proprietăți acide în dbms
#include> int> main()> {> >// constant float literal> >const> float> floatVal = 4.14;> >printf>(>'Floating point literal: %.2f
'>,> >floatVal);> >return> 0;> }> |
>
ce luni sunt q3
>Ieșire
Floating point literal: 4.14>
3. Literale de caractere
Aceasta se referă la literalul care este folosit pentru a stoca un singur caracter într-un singur ghilimeleu. Pentru a stoca mai multe caractere, trebuie să utilizați o matrice de caractere. Stocarea mai mult de un caracter într-un singur ghilimele va lansa un avertisment și va afișa doar ultimul caracter al literalului. Dă naștere la următoarele două reprezentări:
- tip de caracter: Acesta este folosit pentru a stoca caractere literale normale sau literale cu caractere înguste.
Exemplu:
char chr = 'G';>
Exemplu:
C
#include> int> main()> {> >// constant char literal> >const> char> charVal =>'A'>;> >printf>(>'Character Literal: %c
'>,> >charVal);> >return> 0;> }> |
>
>
Ieșire:
bucla for în scriptul shell
Character Literal: A>
Secvențe de evacuare : Există diverse caractere speciale pe care le puteți folosi pentru a efectua diverse operații.
4. Literale șiruri
Literale șir sunt similare cu acele caractere literale, cu excepția faptului că pot stoca mai multe caractere și folosesc ghilimele duble pentru a le stoca. De asemenea, poate găzdui caracterele speciale și secvențele de evadare menționate în tabelul de mai sus. Putem sparge o linie lungă în mai multe linii folosind șir literal și le putem separa cu ajutorul spațiilor albe.
Exemplu:
char stringVal[] = 'techcodeview.com';>
Exemplu:
C
#include> int> main()> {> >const> char> str[]> >=>'Welcome
To
Geeks For Geeks'>;> >printf>(>'%s'>, str);> >return> 0;> }> |
>
>
Ieșire:
Welcome To Geeks For Geeks>
Trebuie citit:
- Literale definite de utilizator
- Raw String Literal în C++
- Literale octale în C
- Literale compuse în C
- Diferența de tip de caractere literale C++