View Full Version : [Linguaggio C] typedef int pipe_t[2];
p4n4s0n1c
10-08-2020, 22:08
Ciao a tutti ragazzi sto imparando a programmare in c, qualcuno mi può spiegare cosa significa questa linea di codice?
typedef int pipe_t[2];
Grazie mille in anticipo.
Definisci un array di due elementi chiamato pipe_t come interi.
un esempio facile da capire è:
typedef char stringa[10]
stringa è un array di 10 caratteri (ovvero una stringa anche se con dimensioni fisse)
p4n4s0n1c
11-08-2020, 09:40
ti ringrazio molto mi riesci a spiegare nello stesso modo chiaro anche questa sequenza di istruzioni
typedef int pipe_t[2];
pipe_t *piped;
int L;
L = atoi(argv[2]);
piped = (pipe_t *) malloc (L*sizeof(pipe_t));
e se togliessi la prima linea cioè il typedef come dovrebbero cambiare le linee successive? Ti ringrazio moltissimo
Beh ma scusa dovresti un attimo ragionarci su, non mi sembra molto complesso.
nella prima riga definisci un nuovo tipo di oggetto, successivamente allochi una variabile
poi dici che L prende il valore, convertendolo ad intero, del secondo parametro passato all'eseguibile.
infine alloca lo spazio sulla base del numero che gli passi.
Ad esempio
#programma.exe ciao 7
alloca piped a puntare il primo elemento dei 7 pipe_t
Se togliessi la prima riga... lascio a te questo esercizio.
lorenzo001
16-08-2020, 07:46
https://www.iprogrammatori.it/forum-programmazione/cplusplus/significato-questa-linea-codice-typedef-int-pipe-t44251.html
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.