logo

Tipus de dades en C

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.

Tipus de dades en C



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
  1. 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.
  2. 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.
  3. int llarg: Versió més gran del tipus de dades int perquè pugui emmagatzemar valors superiors a int.
  4. 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 .