Typedef in c

Typedef in c

IL typedef è la parola chiave predefinita, che indica al compilatore di assegnare i tipi definiti dall'utente ai tipi predefiniti di c, i.e., int, galleggiante, decimale, doppio galleggiante, ecc.

TypeDef può essere utilizzato quando è difficile digitare più volte in un programma. Ad esempio, l'uso multiplo di "INT non firmato" aumenta la complessità del programma. Per ridurre questa complessità, possiamo definire un nome intuitivo per quel tipo. Ad esempio, se lo stiamo usando in ID studente, segni, ecc., allora possiamo semplicemente nominarlo "studente".

In parole semplici, possiamo dire che TypeDef riduce la complessità del programma e fornisce anche chiarezza del codice.

Usi di typedef

Esistono due tipi di usi della parola chiave typedef.

Il primo è con il tipo di dati predefinito. Quando si tratta di alcuni tipi di dati complessi e dobbiamo creare più di una variabile, useremo typedef per ridurre la complessità del codice.

Sintassi

Nello snippet sopra, possiamo vedere il modo di utilizzare typedef utilizzando un semplice tipo di dati predefinito in cui prima scriviamo la parola chiave "typedef" e quindi il tipo di dati che deve essere alias, i.e., Insigned int ecc., e poi il nome che deve essere usato per quel tipo.

Esempio 1

In questo pezzo di codice, utilizzeremo la parola chiave typedef per creare un alias per il nostro tipo di dati predefinito. Dopo aver incluso il nostro file di intestazione "stdio.h ", che ci consente di eseguire operazioni input-output, ci spostiamo nella nostra funzione principale () in cui definiamo le variabili utilizzando la parola chiave typedef. In questo programma, stiamo utilizzando un lungo tipo di dati int lungo. Prima scriviamo la parola chiave typedef e quindi il tipo di dati che è lungo lungo. Come possiamo vedere, Long Long Int è fattibile da usare una volta, ma se dobbiamo usarlo più di una volta, aumenterà le dimensioni del codice. Quindi abbiamo usato un alias "LNG" per il nostro tipo di dati.

#includere
#includere
int main ()

typedef long long int lng;
printf ("Il byte di memoria lungo le lunghe int sono: %ld \ n", sizeof (lng));
restituzione 0;

Quindi abbiamo usato l'istruzione printf () per stampare le dimensioni del tipo di dati che useremo. Nella nostra istruzione printf (), passiamo la dimensione del metodo () responsabile del controllo delle dimensioni della variabile che viene passata ad essa. Nel nostro caso, stiamo verificando la dimensione del tipo di dati che è "8".

Come mostrato nello screenshot di seguito, la dimensione del nostro tipo di dati viene stampata correttamente.

Esempio 2

Come abbiamo studiato sopra, TypeDef riduce la complessità del codice. Typedef può anche essere usato con i puntatori. Sappiamo che i suggerimenti sono i più importanti nella lingua C. Cominciamo con il nostro codice. Innanzitutto, includeremo i nostri file di intestazione e, quindi, al di fuori della funzione principale, dichiareremo un typedef di un puntatore di tipo intero che è "integer_ptr". Ora nella nostra funzione principale, creeremo un puntatore intero "A" che indicherà l'indirizzo della variabile di tipo intero che abbiamo dichiarato nella nostra riga successiva, che è "A_ADDRESS" e gli assegnerà il valore "125023".

#includere
typedef int* integer_ptr;
int main ()

integer_ptr a;
int a_addres = 125023;
a = &a_addres;
printf ("%p", a);

Nella riga successiva, abbiamo assegnato il puntatore "A" L'indirizzo della variabile A_ADDRESS utilizzando la parola chiave ampers e "&."L'Ampersand viene utilizzato per fare riferimento all'indirizzo della variabile che viene memorizzata in memoria. In questo caso, stiamo facendo riferimento all'indirizzo della variabile "A_ADDRESS".

Finalmente, stamperemo l'indirizzo di memoria della variabile "A_ADDRESS" utilizzando l'istruzione printf () in cui abbiamo superato "%p."Questo indica i dati del tipo di punta e" A "che contiene l'indirizzo. La variabile "a_address" è "0x7ffe889bd77c".

Come sappiamo, la struttura è anche un tipo di dati definito dall'utente. A volte è complesso e difficile creare oggetti da loro, quindi usiamo TypeDef per ridurre le dimensioni della struttura.

Sintassi

La struttura viene utilizzata per combinare più tipi di dati in un singolo tipo che è un tipo definito dall'utente. A volte è difficile da usare più volte il tipo di dati di struttura a causa della sua complessità, quindi per ridurre questo fattore, utilizziamo la parola chiave typedef per definire un alias intuitivo. Prima scriviamo la parola chiave typedef e quindi la parola chiave struct che viene utilizzata per creare una struttura. Dopodiché, il nome viene dato a quel tipo.

Esempio 3

In questo esempio, manipoleremo i record degli studenti e impareremo come utilizzare la parola chiave typedef con la funzione struttura. Dato che lavoreremo con stringhe e caratteri, includeremo entrambi i file di intestazione "stdio.H "e" String.H". Dopo i file di intestazione, definiremo o digiteremo. Per fare ciò, prima scriveremo la parola chiave typedef e quindi la parola chiave struct perché stiamo per raggruppare più dati in un unico tipo, quindi nominalo "studente". All'interno delle parentesi graffe, inizializzeremo tutte le variabili e gli array a cui si accederanno durante il programma, quindi non dobbiamo definirli ancora e ancora.

#includere
#includere
Studente struct da typedef
Nome char [50];
CHAR CORSO [50];
int std_id;
Alunno;
int main ()
Studente Stud;
strcpy (Stud.nome "Mudasir");
strcpy (Stud.Corso, "BS SE");
perno.std_id = 6495407;
printf ("Il nome dello studente è: %s \ n", stud.nome);
printf ("Il corso per studenti è: %s \ n", Stud.corso);
Printf ("Student Roll No is: %d \ n", Stud.std_id);
restituzione 0;

Ora spostandosi verso la nostra funzione principale () in cui definiamo un oggetto del nostro tipo di struttura che è "Stud". Il "stud" ora contiene tutti i dati che abbiamo dichiarato al di fuori della funzione principale. Una cosa da tenere a mente è che ogni volta che chiamiamo il tipo di dati della struttura, dobbiamo aggiungere un punto "."Tra l'oggetto e la variabile chiameremo dalla classe di struttura. Queste variabili sono sempre chiamate usando la sintassi:

$ object_defined.variabile_name

In primo luogo, passeremo il nome dello studente usando l'oggetto "Stud" e il nome che è "Mudasir" alla funzione strcpy (). La funzione strcpy () è responsabile della copia dei dati passati alla variabile. In questo, stiamo copiando il nome "Mudasir" alla variabile struttura "Stud".Ripeteremo lo stesso passo per il corso. E dopo ciò, semplicemente assegna l'ID alla variabile "std_id" che è "6495407".

Ora stiamo stampando i dati dei nostri studenti utilizzando l'istruzione printf () in cui abbiamo superato il "Stud.Nome "che è responsabile di tenere il nome dello studente, %s che è responsabile della visualizzazione della stringa, ripetendo lo stesso passaggio nella riga successiva per la visualizzazione del corso e anche per l'ID dello studente. Nel caso di ID, è un tipo intero, quindi abbiamo superato la %d in questa affermazione, il che significa che visualizzerà il tipo decimale di dati.

Come mostrato nello studente di output indicato, il nome, il corso degli studenti e l'ID dello studente vengono visualizzati.

Conclusione

In questa guida, abbiamo appreso la parola chiave TypeDef e i suoi molteplici usi. Lo abbiamo anche usato in più modi, usando puntatori, strutture e semplici tipi di dati predefiniti.