En aquest tema, explorarem els diferents tipus de dades disponibles en el llenguatge de programació C. Els tipus de dades són fonamentals per a la programació, ja que defineixen el tipus de valors que una variable pot emmagatzemar i les operacions que es poden realitzar sobre aquests valors.

Tipus de Dades Bàsics

Els tipus de dades bàsics en C es poden classificar en quatre categories principals:

  1. Tipus de Dades Enteres
  2. Tipus de Dades de Punt Flotant
  3. Tipus de Dades Caràcter
  4. Tipus de Dades Booleans

  1. Tipus de Dades Enteres

Els tipus de dades enteres s'utilitzen per emmagatzemar nombres enters (sense part decimal). Els tipus de dades enteres més comuns són:

Tipus de Dada Mida (en bytes) Rang de Valors
int 4 -2,147,483,648 a 2,147,483,647
short 2 -32,768 a 32,767
long 4 o 8 Depèn de la implementació
long long 8 -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807
unsigned int 4 0 a 4,294,967,295
unsigned short 2 0 a 65,535
unsigned long 4 o 8 Depèn de la implementació
unsigned long long 8 0 a 18,446,744,073,709,551,615

  1. Tipus de Dades de Punt Flotant

Els tipus de dades de punt flotant s'utilitzen per emmagatzemar nombres amb part decimal. Els tipus de dades de punt flotant més comuns són:

Tipus de Dada Mida (en bytes) Precisió Rang de Valors
float 4 6-7 dígits decimals Aproximadament ±3.4E-38 a ±3.4E+38
double 8 15-16 dígits decimals Aproximadament ±1.7E-308 a ±1.7E+308
long double 10, 12 o 16 Depèn de la implementació Depèn de la implementació

  1. Tipus de Dades Caràcter

Els tipus de dades caràcter s'utilitzen per emmagatzemar caràcters individuals. El tipus de dada caràcter més comú és:

Tipus de Dada Mida (en bytes) Rang de Valors
char 1 -128 a 127 (signed) o 0 a 255 (unsigned)

  1. Tipus de Dades Booleans

El tipus de dada booleà s'utilitza per emmagatzemar valors de veritat (true) o falsedat (false). En C, el tipus de dada booleà es defineix a través de la llibreria stdbool.h:

#include <stdbool.h>

bool isTrue = true;
bool isFalse = false;

Declaració de Variables

Per declarar una variable en C, s'ha d'especificar el tipus de dada seguit del nom de la variable. Aquí teniu alguns exemples:

int age = 25;
float height = 5.9;
char initial = 'A';
bool isStudent = true;

Conversió de Tipus

La conversió de tipus es refereix a la transformació d'un valor d'un tipus de dada a un altre. Hi ha dos tipus de conversions de tipus:

  1. Conversió Implícita (Automàtica): El compilador converteix automàticament un tipus de dada a un altre quan sigui necessari.
  2. Conversió Explícita (Casting): El programador especifica explícitament la conversió de tipus.

Conversió Implícita

int i = 10;
float f = i; // Conversió implícita de int a float

Conversió Explícita

float f = 9.8;
int i = (int)f; // Conversió explícita de float a int

Exercicis Pràctics

  1. Declaració i Inicialització de Variables:

    • Declara una variable de cada tipus de dada bàsic i inicialitza-la amb un valor adequat.
  2. Conversió de Tipus:

    • Escriu un programa que demostri la conversió implícita i explícita entre diferents tipus de dades.

Solucions

  1. Declaració i Inicialització de Variables:
#include <stdio.h>
#include <stdbool.h>

int main() {
    int age = 25;
    float height = 5.9;
    char initial = 'A';
    bool isStudent = true;

    printf("Age: %d\n", age);
    printf("Height: %.1f\n", height);
    printf("Initial: %c\n", initial);
    printf("Is Student: %d\n", isStudent);

    return 0;
}
  1. Conversió de Tipus:
#include <stdio.h>

int main() {
    int i = 10;
    float f = i; // Conversió implícita de int a float
    printf("Valor de f (implícit): %.1f\n", f);

    float g = 9.8;
    int j = (int)g; // Conversió explícita de float a int
    printf("Valor de j (explícit): %d\n", j);

    return 0;
}

Resum

En aquest tema, hem après sobre els diferents tipus de dades disponibles en C, incloent-hi els tipus de dades enteres, de punt flotant, caràcter i booleans. També hem vist com declarar variables i com realitzar conversions de tipus, tant implícites com explícites. Aquests conceptes són fonamentals per a la programació en C i seran la base per a temes més avançats en els següents mòduls.

Curs de Programació en C

Mòdul 1: Introducció al C

Mòdul 2: Tipus de Dades i Variables

Mòdul 3: Flux de Control

Mòdul 4: Funcions

Mòdul 5: Arrays i Strings

Mòdul 6: Punteres

Mòdul 7: Estructures i Unions

Mòdul 8: Assignació Dinàmica de Memòria

Mòdul 9: Gestió d'Arxius

Mòdul 10: Temes Avançats

Mòdul 11: Millors Pràctiques i Optimització

Mòdul 12: Projecte i Avaluació Final

© Copyright 2024. Tots els drets reservats