logo

Datatyper i C

Hver variabel i C har en tilknyttet datatype. Den spesifiserer typen data som variabelen kan lagre som heltall, tegn, flytende, dobbel osv. Hver datatype krever forskjellige mengder minne og har noen spesifikke operasjoner som kan utføres over den. Datatypen er en samling av data med verdier som har faste verdier, betydning så vel som dens egenskaper.

Datatypene i C kan klassifiseres som følger:



Typer

Beskrivelse

Primitive datatyper Primitive datatyper er de mest grunnleggende datatypene som brukes til å representere enkle verdier som heltall, flyt, tegn, etc.
Brukerdefinerte datatyper De brukerdefinerte datatypene defineres av brukeren selv.
Avledede typer Datatypene som er avledet fra de primitive eller innebygde datatypene, refereres til som avledede datatyper.

Datatyper i C



Ulike datatyper har også forskjellige rekkevidder som de kan lagre tall til. Disse områdene kan variere fra kompilator til kompilator. Nedenfor er en liste over områder sammen med minnekrav og formatspesifikasjoner på 32-bit GCC kompilator .

Data-type
Størrelse (byte)
Område
Formatspesifikasjoner
kort int
2
-32.768 til 32.767
%hd
usignert kort int
2
0 til 65.535
%hu
usignert int
4
0 til 4.294.967.295
%i
int
4
-2 147 483 648 til 2 147 483 647
%d
lang int
4
-2 147 483 648 til 2 147 483 647
%ld
usignert lang int
4
0 til 4.294.967.295
%lu
lang lang int
8
-(2^63) til (2^63)-1
%lld
usignert lang lang int
8
0 til 18 446 744 073 709 551 615
%llu
signert røye
1
-128 til 127
%c
usignert røye
1
0 til 255
%c
flyte
4
1.2E-38 til 3.4E+38 %f
dobbelt
8
1.7E-308 til 1.7E+308 %lf
lang dobbel
16
3.4E-4932 er 1.1E+4932 %Lf

Merk: Den l lang, kort, signert og usignert er datatypemodifikator som kan brukes med noen primitive datatyper for å endre størrelsen eller lengden på datatypen.

Følgende er noen primitive hoveddatatyper i C:



Heltallsdatatype

Heltallsdatatypen i C brukes til å lagre heltallene (alle tall inkludert positive, negative og null uten desimaldel). Oktale verdier, heksadesimale verdier og desimalverdier kan lagres i int datatype i C.

  • Område: -2 147 483 648 til 2 147 483 647
  • Størrelse: 4 byte
  • Formatspesifikasjon: %d

Syntaks for heltall

Vi brukervar_name;

Heltallsdatatypen kan også brukes som

powershell kommentar multiline
  1. usignert int: Usignert int-datatype i C brukes til å lagre dataverdiene fra null til positive tall, men den kan ikke lagre negative verdier som signert int.
  2. kort int: Den er mindre i størrelse enn int med 2 byte, så den kan bare lagre verdier fra -32 768 til 32 767.
  3. lang int: Større versjon av int-datatypen kan lagre verdier større enn int.
  4. usignert kort int: Lignende i forhold til kort int som usignert int med int.

Merk: Størrelsen på en heltallsdatatype er kompilatoravhengig. Vi kan bruke operatørens størrelse for å sjekke den faktiske størrelsen på en hvilken som helst datatype.

Eksempel på 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;> }>

>

>

Produksjon

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>

Tegndatatype

Tegndatatypen lar variabelen bare lagre ett enkelt tegn. Størrelsen på tegnet er 1 byte. Det er den mest grunnleggende datatypen i C. Den lagrer et enkelt tegn og krever en enkelt byte med minne i nesten alle kompilatorer.

  • Område: (-128 til 127) eller (0 til 255)
  • Størrelse: 1 byte
  • Formatspesifikasjon: %c

Syntaks av char

De char nøkkelord brukes til å deklarere variabelen av tegntype:

  char     var_name;>

Eksempel på røye

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;> }>

>

java server sider
>

Produksjon

Value of a: a Value of a after increment is: b Value of c: c>

Flytende datatype

I C-programmering flytedatatype brukes til å lagre flyttallsverdier. Float in C brukes til å lagre desimal- og eksponentialverdier. Den brukes til å lagre desimaltall (tall med flyttallsverdier) med enkel presisjon.

  • Område: 1.2E-38 til 3.4E+38
  • Størrelse: 4 byte
  • Formatspesifikasjon: %f

Syntaks for flyte

De flyte nøkkelord brukes til å erklære variabelen som et flytende komma:

  float     var_name;>

Eksempel på Float

C


manuell testing



// 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;> }>

>

>

Produksjon

9.000000 2.500000 0.000200>

Dobbel datatype

EN Dobbel datatype i C brukes til å lagre desimaltall (tall med flyttallsverdier) med dobbel presisjon. Den brukes til å definere numeriske verdier som inneholder tall med desimalverdier i C.

Den doble datatypen er i utgangspunktet en presisjonstype datatype som er i stand til å holde 64 biter med desimaltall eller flytende komma. Siden dobbel har mer presisjon sammenlignet med den flytende, er det mye mer åpenbart at den opptar dobbelt så mye minne som flytepunkttypen. Den kan enkelt romme omtrent 16 til 17 sifre etter eller før et desimaltegn.

  • Område: 1.7E-308 til 1.7E+308
  • Størrelse: 8 byte
  • Formatspesifikasjon: %lf

Syntaks av dobbel

Variabelen kan erklæres som flytende punkt med dobbel presisjon ved å bruke dobbelt søkeord:

  double    var_name;>

Eksempel på Double

C




// 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;> }>

>

>

kutte java
Produksjon

123123123.000000 12.293123 2312312312.123123>

Ugyldig datatype

Ugyldig datatype i C brukes til å spesifisere at ingen verdi er tilstede. Den gir ikke en resultatverdi til den som ringer. Den har ingen verdier og ingen operasjoner. Det brukes til å representere ingenting. Void brukes på flere måter som funksjonsreturtype, funksjonsargumenter som void, og pekere til ugyldig .

Syntaks:

// 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);>

Eksempel på Void

C




// C program to demonstrate> // use of void pointers> #include> int> main()> {> >int> val = 30;> >void>* ptr = &val;> >printf>(>'%d'>, *(>int>*)ptr);> >return> 0;> }>

>

>

Produksjon

30>

Størrelse på datatyper i C

Størrelsen på datatypene i C er avhengig av størrelsen på arkitekturen, så vi kan ikke definere den universelle størrelsen på datatypene. For det gir C-språket sizeof()-operatoren for å sjekke størrelsen på datatypene.

Eksempel

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;> }>

>

python-baneinnstilling
>

Produksjon

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>

For å sjekke kunnskapen din om datatyper i C, gå gjennom Quiz om datatyper .