Types de variable de variante de taille
Les types de variable de variante de taille ont à la fois un mode 32 bits et un mode 64 bits.
Les types de données de variante de taille sont répertoriés ci-dessous:
| Type | Taille 32 bits | Taille 64 bits |
|---|---|---|
| (longueur) | 4 | 8 |
| Types de pointeur | 4 | 8 |
Dans le tableau précédent, un type de pointeur fait référence à des types tels que char *, int *, struct foo *, unsigned long *, etc.
Les règles sémantiques suivantes s'appliquent aux variables qui sont définies avec l'un des types précédents, c'est-à-dire pour les "longs" et les "pointeurs". Les règles s'appliquent que les variables soient membres d'une structure ou d'une union ou qu'elles soient déclarées en tant que variables individuelles:
- Classe automatique
- Le mode de la variable dépendra du mode du processus sondé (32 ou 64).
- Classe locale de l'unité d'exécution
- Le mode de la variable dépendra du mode du processus sondé (32 ou 64).
- Classe globale
- La variable est toujours traitée comme étant en mode 64 bits quel que soit le mode du processus sondé. Cela permet à la variable d'être utilisée en toute sécurité par les processus 32 bits et 64 bits sans perdre de données.
- Classe globale du noyau
- Les variables du noyau qui sont des longs ou des pointeurs sont toujours en mode 64 bits, car le seul noyau pris en charge pour AIX® 6.1 et les versions ultérieures est le noyau 64 bits.
- Classe d'entrée
- Si un type long ou pointeur est défini dans le prototype de fonction pour l'un des paramètres de la fonction, les modes des variables de classe d'entrée correspondantes (__arg1 à __arg32) dépendent du mode du processus sondé (32 ou 64).
- Classe d'exit
- Si un type long ou de pointeur est défini dans le prototype de fonction comme type de la valeur de retour de la fonction, le mode de la variable de classe d'exit (__rv) dépendra du mode du processus sondé (32 ou 64).
- Classe intégrée
- Ces variables ont généralement un type invariant de taille à l'exception des éléments intégrés __r3 à __r10 qui sont définis comme ayant un type long non signé et qui sont donc de 32 bits pour les processus 32 bits et de 64 bits pour les processus 64 bits.
Les sondes @@BEGIN et @@END sont toujours émises en mode 64 bits.
Types de données dans Vue
Le langage Vue accepte trois types de données spéciaux en plus des types de données C-89 traditionnels.