Gegevenstypen in C - Verschillende gegevenstypen met voorbeelden en codes

Inhoudsopgave:

Anonim

Inleiding tot gegevenstypen in C

C is een compacte, algemene computerprogrammeertaal die is ontwikkeld door Dennis Ritchie voor het Unix-besturingssysteem in bell laboratoria. C is een gestructureerde programmeertaal die machine-onafhankelijk is. C is door veel organisaties gebruikt voor het ontwikkelen van besturingssystemen, tolken, stuurprogramma's, ook het database-orakel is geschreven in C en in het moderne tijdperk gebruiken de ingebedde systeemontwerpen en IoT-ontwikkeling ook de C-taal. C is een gecompileerde taal waarin de compiler de verantwoordelijkheid neemt om de broncode om te zetten in machineleesbare objectcode. Er zijn verschillende compilers beschikbaar zoals - TurboC, Clang, enz.

Typen gegevenstypen in C

  1. Wanneer een variabele in C wordt gedefinieerd, moet deze aan een bepaald gegevenstype worden gekoppeld.
  2. Dit geeft een indicatie over de hoeveelheid geheugen die aan die variabele moet worden toegewezen en elke variabele zal zijn eigen unieke geheugenlocatie behouden, behalve in sommige gevallen waarin de variabelen alleen naar dezelfde geheugenlocatie wijzen
  3. C heeft de gegevenstypen onderverdeeld in:
  • een. Primaire gegevenstypen
  • b. Afgeleide gegevenstypen

een. De primaire gegevenstypen worden ook als primitieve gegevenstypen genoemd en deze omvatten het volgende:

  • Int
  • Vlotter
  • verkolen
  • leegte

b. De afgeleide gegevenstypen kunnen een van de volgende zijn:

  • reeks
  • Structuur
  • Unie
  • Wijzer

Laten we ze nu allemaal beschrijven met voorbeelden

1. Het gegevenstype geheel getal (int): als u de hele getallen moet opslaan, dan kan int als een gegevenstype worden gebruikt, het kan een bereik van getallen hebben op basis van de grootte die u in het geheugen kiest en het kan alle positieve of van negatief tot positief bereik van getallen op basis van gebruikerskeuze van codeontwerp.

Int typeGrootte (in bytes)Bereik toegestaan
int of ondertekend int2-32.768 tot 32767
niet ondertekend int20 tot 65535
korte int. of ondertekende korte int1-128 tot 127
niet ondertekend korte int10 tot 255
lange int. of ondertekende lange int4-2.147.483.648 tot 2.147.483.647
niet ondertekend lang int40 tot 4.294.967.295

Bijvoorbeeld

#include
void main()
(
int a = 1;
printf(" %d is the integer value ", a);
unsigned short int x = -3278989;
printf(" %hu is the integer value ", x);
)

Output:

2. Float-gegevenstype: elk reëel getal kan in het float-gegevenstype worden opgeslagen en ook hier kunnen we het bereik specificeren, op basis van het gegevenstype en de grootteselectie, een bereik van getallen is toegestaan.

Type vlotterGrootte (in bytes)Bereik van Float
Vlotter43.4E-38 tot 3.4E + 38
dubbele81.7E-308 tot 1.7E + 308
lang dubbel103.4E-4932 tot 1.1E + 4932

Bijvoorbeeld

#include
#include
#include
void main() (
printf("max float value allowed in positive range : %g\n", (float) FLT_MAX);
printf("max float value allowed in negative range : %g\n", (float) -FLT_MAX);
printf("max double value possible in positive range : %g\n", (double) DBL_MAX);
printf("max double value possible in negative range : %g\n", (double) -DBL_MAX);
)

Uitgang:

3. Char type: dit vertegenwoordigt het karakter datatype en het kan voor beide gevallen worden ondertekend of niet ondertekend met een constante grootte van 1 byte.

Char TypeGrootte (in bytes)Bereik van char
char of ondertekend char1-128 tot 127
Ongetekend char10 tot 255

Bijvoorbeeld

#include
void main() (
char c ='a';
char f = 65; // represents ASCII char value, refer to ASCII table
printf("%c %c ", c, f);
)

Output:

4. Ongeldig type: als u geen enkel type wilt toewijzen aan een functie (dwz het zal niet iets teruggeven zoals u de hoofdfunctie zag voorafgegaan door ongeldig type in bovenstaande fragmenten), dan kunt u het markeren als ongeldig type.

De bovengenoemde fragmenten kunnen als voorbeelden voor hetzelfde worden aangeduid.

5. Arrays: Wanneer een homogene set gegevens moet worden opgeslagen in aaneengesloten geheugenlocaties, wordt dit gegevenstype gekozen. Gebruik is bijvoorbeeld dat er momenten kunnen zijn dat uw code meer dan één resultaat retourneert en dat moet worden geretourneerd vanuit functies cumulatief, zoals wanneer we een lijst van alle maanden in een jaar moeten vinden, dan zullen ze 12 zijn, daarom kunnen we 12 maanden niet discreet in een enkele variabele plaatsen, dus gebruiken we arrays voor hetzelfde.

Laten we een eenvoudig fragment bekijken om de verklaring en het gebruik van arrays te begrijpen.

Bijvoorbeeld

#include
void main() (
int i;
char arr() = ('a', 'b', 'c');
for(i = 0 ; i < 3 ; i++)
(
printf("%c\n", arr(i));
)
)

Output:

6. Structuren: als er een vereiste is, waarbij u een fysieke wereldstructuur moet weergeven in de codeerwereld, kan dit type van pas komen, zoals de klasse van studenten kan worden gedefinieerd als een structuur en studentcijfers en het studentrolnummer kunnen worden gebruikt als variabelen erin, kan een array worden geïntroduceerd die voor veel studenten gegevens met betrekking tot een dergelijke structuur kan bevatten.

Bijvoorbeeld

#include struct class(
int marks;
int rollNo;);
void main() (
struct class c;
c.marks=10;
c.rollNo=1;
printf("%d\n", c.marks);
printf("%d", c.rollNo);
)
#include struct class(
int marks;
int rollNo;);
void main() (
struct class c;
c.marks=10;
c.rollNo=1;
printf("%d\n", c.marks);
printf("%d", c.rollNo);
)

Output:

7. Aanwijzer: dit is een van de belangrijkste gegevenstypen, omdat we niet in de wereld van OOP's in C-taal zijn, talen zoals Java gebruiken het niet, maar functionele programmeertalen gebruiken het altijd. Het concept van pointers is om het geheugen toe te wijzen aan een variabele en vervolgens naar die geheugenlocatie te verwijzen voor lees- en schrijfbewerkingen, die geheugenlocatie kan het adres van een functie zijn, kan het adres van een variabele zijn, enz. Pointers worden nodig voor Array- en structuurafhandeling in C-taal en biedt ook dynamisch geheugenbeheer.

Bijvoorbeeld

#include
void main() (
int a, *p; // variable and pointer declaration
a = 10;
p = &a;
printf("%d", *p); // print the value of 'a'
printf("%u", &a); //print the address of 'a'
printf("%u", p); // print the address of 'a' in different way
// remember & represents address of variable
)

Output:

Conclusie

Daarom zagen we verschillende gegevenstypen in C en hoe deze samenwerken met de C-taal om coderingsscenario's te verwerken. U kunt ingebed programmeren ook met C uitvoeren, omdat hiervoor ook hulpprogramma's zijn ontwikkeld. Dus C is een veelzijdige taal, maar met real-world scenario's wordt codering complex en meer betrokken.

Aanbevolen artikel

Dit is een gids voor Gegevenstype in C. Hier bespreken we Typen gegevenstypen en beschrijvingen, met voorbeelden en codes. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie -

  1. Gegevenstypen in MATLAB
  2. Beste datavisualisatiehulpmiddelen
  3. Introductie tot Data Science
  4. Gegevensmodellen in DBMS
  5. Python-gegevenstypen
  6. PL / SQL-gegevenstypen
  7. Gids voor verschillende C # gegevenstypen
  8. Verschillende soorten SQL-gegevens met voorbeelden
  9. PHP-gegevenstypen | Gegevenstypen van PHP met voorbeelden