Latest web development tutorials

C typedef

C - Sprache bietet einetypedef Keywords, können Sie es verwenden Sie einen neuen Namen für die Art zu nehmen.Das folgende Beispiel definiert ein BegriffBYTE ein einziges Byte - Zahlen ist:

typedef unsigned char BYTE;

Nach dieser Typdefinition, kann es als eine Kennung BYTEunsigned char Typ Abkürzung verwendet werden, wie zB:

BYTE  b1, b2;

Vereinbarungsgemäß wird die Definition Buchstaben aktiviert, um den Benutzer zu warnen ein symbolischer Name ist eine Abkürzung eingeben, aber Sie können auch Kleinbuchstaben verwenden, wie folgt:

typedef unsigned char byte;

Sie können auchtypedef , um benutzerdefinierte Datentypen verwenden , um einen neuen Namen für den Benutzer zu übernehmen.Zum Beispiel können Sie die Struktur typedef verwenden, um einen neuen Datentyp zu definieren, und dann diese Art neue Daten verwenden, um die Struktur der direkten Variablen definieren, wie folgt:

#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;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

Book  title : C Programming
Book  author : Nuha Ali
Book  subject : C Programming Tutorial
Book  book_id : 6495407

typedef vs #define

C# define - Anweisung wird verwendet , um einen Alias für eine Vielzahl von Datentypen zu definieren und typedefähnlich, aber sie unterscheiden sich wie folgt:

  • typedef nur symbolische Namen für typedefs,#define können nicht nur die Art von Alias definieren , sondern auch einen Alias für den Wert, zum Beispiel definieren, können Sie 1 ONE definieren.
  • typedef wird interpretiertvom Compiler ausgeführt wird # define - Anweisung durch den Compiler durch den vorverarbeiteten durchgeführt.

Hier ist die einfachste Verwendung von #define:

#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;
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:

Value of TRUE : 1
Value of FALSE : 0