C - typedef
De programmeertaal C biedt een trefwoord genaamd typedef , waarmee u een type een nieuwe naam kunt geven. Hieronder volgt een voorbeeld om een term BYTE . te definiëren voor nummers van één byte −
typedef unsigned char BYTE;
Na deze typedefinitie kan de identifier BYTE worden gebruikt als afkorting voor bijvoorbeeld het type unsigned char. .
BYTE b1, b2;
Volgens afspraak worden voor deze definities hoofdletters gebruikt om de gebruiker eraan te herinneren dat de typenaam eigenlijk een symbolische afkorting is, maar u kunt kleine letters gebruiken, als volgt −
typedef unsigned char byte;
U kunt typedef . gebruiken om ook een naam te geven aan uw door de gebruiker gedefinieerde gegevenstypen. U kunt bijvoorbeeld typedef met structuur gebruiken om een nieuw gegevenstype te definiëren en dat gegevenstype vervolgens gebruiken om structuurvariabelen rechtstreeks als volgt te definiëren −
Live demo
#include <stdio.h>
#include <string.h>
typedef struct Books {
char title[50];
char author[50];
char subject[100];
int book_id;
} Book;
int main( ) {
Book book;
strcpy( book.title, "C Programming");
strcpy( book.author, "Nuha Ali");
strcpy( book.subject, "C Programming Tutorial");
book.book_id = 6495407;
printf( "Book title : %s\n", book.title);
printf( "Book author : %s\n", book.author);
printf( "Book subject : %s\n", book.subject);
printf( "Book book_id : %d\n", book.book_id);
return 0;
}
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
Book title : C Programming Book author : Nuha Ali Book subject : C Programming Tutorial Book book_id : 6495407
typedef vs #define
#define is een C-richtlijn die ook wordt gebruikt om de aliassen voor verschillende gegevenstypen te definiëren, vergelijkbaar met typedef maar met de volgende verschillen −
-
typedef is beperkt tot het geven van symbolische namen aan typen alleen waar als #define kan worden gebruikt om ook een alias voor waarden te definiëren, q., u kunt 1 definiëren als EEN enz.
-
typedef interpretatie wordt uitgevoerd door de compiler terwijl #define verklaringen worden verwerkt door de pre-processor.
Het volgende voorbeeld laat zien hoe u #define in een programma gebruikt −
Live demo
#include <stdio.h>
#define TRUE 1
#define FALSE 0
int main( ) {
printf( "Value of TRUE : %d\n", TRUE);
printf( "Value of FALSE : %d\n", FALSE);
return 0;
}
Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −
Value of TRUE : 1 Value of FALSE : 0
C Taal
- C# Hello World - Uw eerste C#-programma
- C#-zoekwoorden en -ID's
- Nieuw boek helpt productie en onderhoud te transformeren
- ISA publiceert boek over veiligheid en betrouwbaarheid van controlesystemen
- Nieuw boek is Primer on Overall Equipment Effectiveness
- Boekrecensie:Digitaliseer of sterf
- Een zeer menselijke toekomst
- 17 beste programmeerboeken om te lezen in 2021
- C - Structuren
- C - typedef
- C++-gegevensstructuren