Articles of typedef

Comment utiliser typedef et typedef enum dans C?

Considérer: #define MAXROW 20 #define MAXCOL 60 typedef State Grid[MAXROW+2] [MAXCOL+2] typedef enum state {DEAD,ALIVE} State Comment utiliser typedef et typedef enum dans C? Que fait cette partie du code?

valeurs d’énumération: NSInteger ou int?

tl; dr version Comment les types de données des constantes d’un enum sont-ils garantis NSUInteger au lieu de unsigned int lors de la déclaration d’un enum: enum { NSNullCellType = 0, NSTextCellType = 1, NSImageCellType = 2 }; typedef NSUInteger NSCellType; Le typedef à NSUInteger ne semble pas être lié à la déclaration enum. Version […]

Déclarations avant de struct sans nom

Question Bounty: Donc, ces deux Foo ne sont pas la même chose. Bien. La deuxième forme est donnée dans une bibliothèque. Comment puis-je le déclarer à l’avance, étant donné que je ne peux pas le changer? J’ai toujours pensé que C et C ++ permettaient des déclarations répétées à condition qu’il n’y ait pas de […]

C ++ – signification d’une instruction combinant typedef et typename

Dans un fichier d’en-tête C ++, je vois ce code: typedef typename _Mybase::value_type value_type; Maintenant, si je comprends bien, citant « C ++, la référence complète » de Schildt. typename peut être remplacé par le mot clé class, la deuxième utilisation de typename consiste à informer le compilateur qu’un nom utilisé dans une déclaration de […]

Comprendre la grammaire de typage confus

Considérez l’extrait de code suivant typedef int type; int main() { type *type; // why is it allowed? type *k ;// which type? } Je reçois une erreur ‘k’ is not declared in this scope . Le compilateur parsing le type *k comme multiplication entre le type* et k . Cette grammaire n’est-elle pas très […]

Comment lisez-vous les déclarations C?

J’ai entendu parler de certaines méthodes, mais aucune d’entre elles ne s’est collée. Personnellement, j’essaie d’éviter les types complexes en C et essaye de les décomposer en composant typedef. Je suis maintenant confronté au maintien d’un code hérité d’un «programmeur trois écanvass», et j’ai du mal à lire certains des codes *** [] []. Comment […]

Comment fonctionne typedef-un bloc fonctionne

Dans C / Obj-C, nous faisons un typedef comme ceci typedef int MYINT; ce qui est clair Faire typedef pour un block – typedef void (^MyBlock) (int a); Maintenant, nous pouvons utiliser MyBlock . Ne devrait-il pas être comme – typedef void (^MyBlock) (int a) MyBlock; similaire à #define ? Comment fonctionne la syntaxe?

Quelle est l’utilisation de typedef?

Quelle est l’utilisation du mot-clé typedef en C? Quand est-ce nécessaire?

Typedefs répétés – non valide en C mais valide en C ++?

Je voudrais une référence standard pour que le code suivant déclenche un avertissement de conformité dans C (testé avec gcc -pedantic ; “typedef gcc -pedantic “), mais cela se passe bien dans C ++ ( g++ -pedantic ): typedef struct Foo Foo; typedef struct Foo Foo; int main() { return 0; } Pourquoi ne puis-je […]

Si je fais un `typedef` en C ou C ++, quand dois-je append` _t` à la fin du type typedef’ed?

Je suis confus quand est-ce que je devrais append le _t fin aux types typedef ‘ed? Par exemple, devrais-je faire ceci: typedef struct image image_t; ou ca: typedef struct image image; Quelles sont les règles générales? Un autre exemple, dois-je faire ceci: typdef enum { ARRAY_CLOSED, ARRAY_OPEN, ARRAY_HALFOPEN } array_type_t; ou ca: typdef enum { […]