Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Tipuri de date

c


Tipuri de date

Exista posibilitatea de a defini noi tipuri de date si chiar de a le denumi.



Definirea unui tip de data (typedef)

Asignarea unei denumiri unui tip de data se realizeaza astfel:

typedef tip Denumire_Tip

Exemplu:

typedef int Integer typedef float Real ;

Integer i,j;    Real X[10];

Tipul enumerare (enum)

Definirea acestui tip se face astfel:

enum Denumire Lista_Var

Implicit Expr0=0, iar Expri=Expri-1+1, iar daca se declara o lista de variabile avand acest tip atunci denumirea tipului enumerare definit poate lipsi.

Exemplu:

#include <stdio.h>; // 2003

#include <conio.h>;

enum Zi_Lucratoare;

enum ZileSapt

enum ZileSapt Zi_Sapt; // sau ZileSapt Zi_Sapt;

void main (void)

int Zi,Luna,luna;

printf(' Zi, Luna : '); scanf(' d d',&Zi,&Luna);

for (luna=1; luna<Luna; luna++) Zi+=Zile[luna-1];

Zi_Sapt=Luni; Zi=(Zi+1) 7; while (Zi--) Zi_Sapt++; // sau Zi_Sapt=Zi_Sapt+

if (Zi_Sapt<Sambata) Zi_Lucratoare=True;

else Zi_Lucratoare=False;

if (Zi_Lucratoare) printf(' Este o zi lucratoare n');

else printf(' Este o zi libera n');

getch();

Definirea unei structuri (struct)

Definirea unei structuri (inregistrari) se face astfel:

struct Denumire Lista_Var

Daca se declara o lista de variabile avand acest tip atunci denumirea structurii poate lipsi.

Referirea componentelor unei structuri se face astfel:

Denumire Componenta

Exemplu:

#include <stdio.h>;

#include <conio.h>;

typedef float Real;

struct Punct

struct Cerc

Real Sqr(Real x)

void main (void)

; Cerc C;

printf(' n Cerc : '); scanf('%f %f %f',&C.Centru.x,&C.Centru.y,&C.Raza);

printf(' n C(x0,y0,r)= %5.2f %5.2f %5.2f',C.Centru.x,C.Centru.y,C.Raza);

if (Sqr(C.Centru.x-O.x)+Sqr(C.Centru.y-O.y)<=Sqr(C.Raza)) printf(' n C contine O');

else printf(' n C nu cont.O');

getch();

Referirea componentelor unei structuri definita printr-o variabila de tip referinta (pointer) se efectueaza

Var_Ref Componenta sau Var_Ref >Componenta

Exemplu:

struct Cerc

void TipCerc( Cerc C

void main (void)

; TipCerc(&C); }

Redefinirea unei date (union)

Redefinirea unei zone de memorie se poate face in cadrul unei uniuni astfel:

union Denumire Lista_Var

Toate componentele aflate in Lista_Declaratii ocuma aceeasi zona de memorie (se suprapun), lungimea uniunii fiind data de maximul lungimilor declaratiilor .

Referirea componentelor unei uniuni se face astfel:

Denumire Componenta

sau pentru o variabila de tip referinta:

Var_Ref Componenta sau Var_Ref >Componenta

Exemplu:

union U x;

int Cifra(int c)   

void Cifre(int b)   

void Print(unsigned x)

void main (void)

while (x.Hexa!=0); getch();

Campuri de biti

Exista posibilitatea definirii unei structuri ale carei campuri sa fie formate dintr-o secventa de biti consecutivi (ai unui cuvant). Aceste campuri au tipul unsigned avand fiecare o lungime precizata (in numar de biti):

struct Denumire Lista_Var

unde campurile Campi sunt de forma:

unsigned Nume_Campi : Lungimei

Exemplu:

#include <stdio.h>;

struct Camp_Biti ;

union    x ;

void Cifra(int c)

void main (void)

while (x.Intreg!=0);



Document Info


Accesari: 904
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )