puntatori
int value = 10;
int *ptr = &value;
printf("%d\n", *ptr);
array
int nums[3] = {1, 2, 3};
printf("%d\n", nums[0]);
allocazione dinamica
#include <stdlib.h>
int *buf = malloc(3 * sizeof(int));
buf[0] = 1;
free(buf);
input/output
#include <stdio.h>
printf("ciao\n");
esercizi
allocalo un buffer e libera la memoria.
int *buf = malloc(4 * sizeof(int));
buf[0] = 42;
free(buf);
panoramica
In questo capitolo su memoria e puntatori lavoriamo su puntatori, array, allocazione dinamica, input/output per creare micro-pattern riutilizzabili.
lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali.
badge: c essentials
obiettivi
- capire e applicare puntatori in uno scenario reale
- capire e applicare array in uno scenario reale
- capire e applicare allocazione dinamica in uno scenario reale
- capire e applicare input/output in uno scenario reale
scheda rapida
int value = 10;
int *ptr = &value;
printf("%d\n", *ptr);
adatta questo scheletro agli esempi della lezione.
tips
- compila con warning elevati
- controlla ogni return code
- libera la memoria allocata
- usa header guard
- mantieni funzioni corte
- mantieni puntatori leggibile
tip: documenta ogni scelta architetturale.
mini progetto
gestisci un buffer dinamico in sicurezza.
- alloca
- usa
- libera
output atteso: nessun leak.
checklist
- ho eseguito gli snippet e controllato l'output
- ho annotato almeno 2 trade-off
- ho completato il mini progetto
- ho salvato un riepilogo personale