Cada variable en C té un tipus de dades associat. Especifica el tipus de dades que la variable pot emmagatzemar com enter, caràcter, flotant, doble, etc. Cada tipus de dades requereix diferents quantitats de memòria i té algunes operacions específiques que es poden realitzar sobre ella. El tipus de dades és una col·lecció de dades amb valors que tenen valors fixos, el significat i les seves característiques.
Els tipus de dades en C es poden classificar de la següent manera:
Tipus | Descripció |
---|---|
Tipus de dades primitives | Els tipus de dades primitives són els tipus de dades més bàsics que s'utilitzen per representar valors simples com ara nombres enters, flotants, caràcters, etc. |
Tipus de dades definides per l'usuari | Els tipus de dades definits per l'usuari els defineix el mateix usuari. |
Tipus derivats | Els tipus de dades que es deriven dels tipus de dades primitius o integrats s'anomenen tipus de dades derivades. |
Els diferents tipus de dades també tenen diferents rangs fins als quals poden emmagatzemar números. Aquests intervals poden variar d'un compilador a un altre. A continuació es mostra una llista d'intervals juntament amb el requisit de memòria i els especificadors de format Compilador GCC de 32 bits .
Tipus de dades | Mida (bytes) | Interval | Especificador de format |
---|---|---|---|
curt int | 2 | -32.768 a 32.767 | %hd |
int curt sense signar | 2 | 0 a 65.535 | %hu |
int sense sign | 4 | 0 a 4.294.967.295 | % en |
int | 4 | -2.147.483.648 a 2.147.483.647 | %d |
llarg int | 4 | -2.147.483.648 a 2.147.483.647 | %ld |
unsigned long int | 4 | 0 a 4.294.967.295 | %lu |
llarg llarg int | 8 | -(2^63) a (2^63)-1 | %lld |
sense signar llarg llarg int | 8 | 0 a 18.446.744.073.709.551.615 | %llu |
caràcter signat | 1 | -128 a 127 | %c |
caràcter sense signar | 1 | 0 a 255 | %c |
flotar | 4 | 1.2E-38 a 3.4E+38 | %f |
doble | 8 | 1.7E-308 a 1.7E+308 | %lf |
doble llarg | 16 | 3.4E-4932 és 1.1E+4932 | %Lf |
Nota: El jo ong, breu, signat i sense signar són modificadors de tipus de dades que es poden utilitzar amb alguns tipus de dades primitius per canviar la mida o la longitud del tipus de dades.
Els següents són alguns dels principals tipus de dades primitives en C:
Tipus de dades enter
El tipus de dades enter en C s'utilitza per emmagatzemar els nombres enters (qualsevol nombre inclòs positiu, negatiu i zero sense part decimal). Els valors octals, els valors hexadecimals i els valors decimals es poden emmagatzemar al tipus de dades int a C.
- Interval: -2.147.483.648 a 2.147.483.647
- Mida: 4 bytes
- Especificador de format: %d
Sintaxi d'enter
Fem servirvar_nom;
El tipus de dades enter també es pot utilitzar com a
connectar-se a una base de dades java
- int sense signar: El tipus de dades int sense signar a C s'utilitza per emmagatzemar els valors de les dades des de zero fins a nombres positius, però no pot emmagatzemar valors negatius com el signed int.
- int curt: Té una mida menor que l'int per 2 bytes, de manera que només pot emmagatzemar valors de -32.768 a 32.767.
- int llarg: Versió més gran del tipus de dades int perquè pugui emmagatzemar valors superiors a int.
- int curt sense signar: Similar en relació amb short int com unsigned int amb int.
Nota: La mida d'un tipus de dades enter depèn del compilador. Podem utilitzar grandària de l'operador per comprovar la mida real de qualsevol tipus de dades.
Exemple de int
C
// C program to print Integer data types.> #include> int> main()> {> > // Integer value with positive data.> > int> a = 9;> > // integer value with negative data.> > int> b = -9;> > // U or u is Used for Unsigned int in C.> > int> c = 89U;> > // L or l is used for long int in C.> > long> int> d = 99998L;> > printf> (> 'Integer value with positive data: %d
'> , a);> > printf> (> 'Integer value with negative data: %d
'> , b);> > printf> (> 'Integer value with an unsigned int data: %u
'> ,> > c);> > printf> (> 'Integer value with an long int data: %ld'> , d);> > return> 0;> }> |
>
afegir a la matriu java
>Sortida
Integer value with positive data: 9 Integer value with negative data: -9 Integer value with an unsigned int data: 89 Integer value with an long int data: 99998>
Tipus de dades de caràcter
El tipus de dades de caràcter permet que la seva variable emmagatzemi només un caràcter. La mida del caràcter és d'1 byte. És el tipus de dades més bàsic en C. Emmagatzema un sol caràcter i requereix un únic byte de memòria en gairebé tots els compiladors.
- Interval: (-128 a 127) o (0 a 255)
- Mida: 1 byte
- Especificador de format: %c
Sintaxi de char
El paraula clau char s'utilitza per declarar la variable de tipus de caràcter:
char var_name;>
Exemple de char
C
// C program to print Integer data types.> #include> int> main()> {> > char> a => 'a'> ;> > char> c;> > printf> (> 'Value of a: %c
'> , a);> > a++;> > printf> (> 'Value of a after increment is: %c
'> , a);> > // c is assigned ASCII values> > // which corresponds to the> > // character 'c'> > // a-->97 b-->98 c-->99> > // here c will be printed> > c = 99;> > printf> (> 'Value of c: %c'> , c);> > return> 0;> }> |
>
>Sortida
Value of a: a Value of a after increment is: b Value of c: c>
Tipus de dades flotant
En programació C tipus de dades flotant s'utilitza per emmagatzemar valors de coma flotant. Float en C s'utilitza per emmagatzemar valors decimals i exponencials. S'utilitza per emmagatzemar nombres decimals (nombres amb valors de coma flotant) amb una precisió única.
- Interval: 1.2E-38 a 3.4E+38
- Mida: 4 bytes
- Especificador de format: %f
Sintaxi de float
El paraula clau flotant s'utilitza per declarar la variable com a coma flotant:
float var_name;>
Exemple de Float
C
java convertir char a int
// C Program to demonstrate use> // of Floating types> #include> int> main()> {> > float> a = 9.0f;> > float> b = 2.5f;> > // 2x10^-4> > float> c = 2E-4f;> > printf> (> '%f
'> , a);> > printf> (> '%f
'> , b);> > printf> (> '%f'> , c);> > return> 0;> }> |
>
>Sortida
9.000000 2.500000 0.000200>
Tipus de dades dobles
A Doble tipus de dades en C s'utilitza per emmagatzemar nombres decimals (nombres amb valors de coma flotant) amb doble precisió. S'utilitza per definir valors numèrics que contenen nombres amb valors decimals en C.
El tipus de dades doble és bàsicament un tipus de dades de precisió que és capaç de contenir 64 bits de nombres decimals o de coma flotant. Com que el doble té més precisió en comparació amb aquest flotant, és molt més obvi que ocupa el doble de la memòria ocupada pel tipus de coma flotant. Pot acomodar fàcilment entre 16 i 17 dígits després o abans d'un punt decimal.
- Interval: 1.7E-308 a 1.7E+308
- Mida: 8 bytes
- Especificador de format: %lf
Sintaxi de Double
La variable es pot declarar com a coma flotant de doble precisió mitjançant l' doble paraula clau:
double var_name;>
Exemple de doble
C
avl arbres
// C Program to demonstrate> // use of double data type> #include> int> main()> {> > double> a = 123123123.00;> > double> b = 12.293123;> > double> c = 2312312312.123123;> > printf> (> '%lf
'> , a);> > printf> (> '%lf
'> , b);> > printf> (> '%lf'> , c);> > return> 0;> }> |
>
>Sortida
123123123.000000 12.293123 2312312312.123123>
Tipus de dades nuls
El tipus de dades nul en C s'utilitza per especificar que no hi ha cap valor. No proporciona un valor de resultat a la persona que truca. No té valors ni operacions. S'utilitza per representar res. Void s'utilitza de diverses maneres com a tipus de retorn de funció, els arguments de funció com a void i punters al buit .
Sintaxi:
// function return type void void exit(int check); // Function without any parameter can accept void. int print( void ); // memory allocation function which // returns a pointer to void. void *malloc (size_t size);>
Exemple de buit
C
// C program to demonstrate> // use of void pointers> #include> int> main()> {> > int> val = 30;> > void> * ptr = &val;> > printf> (> '%d'> , *(> int> *)ptr);> > return> 0;> }> |
llista de creació de java
>
>Sortida
30>
Mida dels tipus de dades en C
La mida dels tipus de dades en C depèn de la mida de l'arquitectura, de manera que no podem definir la mida universal dels tipus de dades. Per això, el llenguatge C proporciona l'operador sizeof() per comprovar la mida dels tipus de dades.
Exemple
C
// C Program to print size of> // different data type in C> #include> int> main()> {> > int> size_of_int => sizeof> (> int> );> > int> size_of_char => sizeof> (> char> );> > int> size_of_float => sizeof> (> float> );> > int> size_of_double => sizeof> (> double> );> > printf> (> 'The size of int data type : %d
'> , size_of_int);> > printf> (> 'The size of char data type : %d
'> ,> > size_of_char);> > printf> (> 'The size of float data type : %d
'> ,> > size_of_float);> > printf> (> 'The size of double data type : %d'> ,> > size_of_double);> > return> 0;> }> |
>
>Sortida
The size of int data type : 4 The size of char data type : 1 The size of float data type : 4 The size of double data type : 8>
Per comprovar el vostre coneixement dels tipus de dades en C, aneu a Test sobre tipus de dades .