Taille de l'opérateur (C) (2023)

Letaille deL'opérateur donne la quantité de stockage, en octets, requis pour stocker un objet du type d'opérande.Cet opérateur vous permet d'éviter de spécifier les tailles de données dépendantes de la machine dans vos programmes.

Syntaxe

Sizeof unary-expressionsizeof (Type-Name)

Remarques

L'opérande est soit un identifiant qui est unexpression unaire, ou une expression de type moulé (c'est-à-dire un spécificateur de type enfermé entre parenthèses).Leexpression unaireImpossible de représenter un objet de champ Bit, un type incomplet ou un concepteur de fonction.Le résultat est une constante intégrale non signée.L'en-tête standard stddef.h définit ce type commesize_t.

Lorsque vous appliquez letaille deOpérateur à un identifiant de tableau, le résultat est la taille de l'ensemble du tableau plutôt que de la taille du pointeur représenté par l'identifiant du tableau.

Lorsque vous appliquez letaille deOpérateur à un nom de structure ou de type d'union, ou à un identifiant de structure ou de type d'union, le résultat est le nombre d'octets dans la structure ou l'union, y compris le rembourrage interne et de fin.Cette taille peut inclure le rembourrage interne et de fuite utilisé pour aligner les membres de la structure ou de l'union sur les limites de la mémoire.Ainsi, le résultat peut ne pas correspondre à la taille calculée en additionnant les exigences de stockage des membres individuels.

Si un tableau non signé est le dernier élément d'une structure, letaille deL'opérateur renvoie la taille de la structure sans le tableau.

tampon = calloc (100, sizeof (int));

Cet exemple utilise letaille deopérateur pour passer la taille d'unint, qui varie selon les machines, comme argument d'une fonction d'exécution nomméecalloc.La valeur renvoyée par la fonction est stockée danstampon.

Statique Char * Strings [] = {"Ceci est String One", "Ceci est String Two", "Ceci est String Three",}; const int string_no = (sizeof Strings) / (sizeof Strings [0]);

Dans cet exemple,cordesest un éventail de pointeurs verscarboniser.Le nombre de pointeurs est le nombre d'éléments dans le tableau, mais n'est pas spécifié.Il est facile de déterminer le nombre de pointeurs en utilisant letaille deOpérateur pour calculer le nombre d'éléments dans le tableau.Leconstvaleur entièrestring_noest initialisé à ce numéro.Parce que c'est unconstvaleur,string_none peut pas être modifié.

Voir également

C opérateurs
Opérateurs intégrés C ++, priorité et association

References

Top Articles
Latest Posts
Article information

Author: Zonia Mosciski DO

Last Updated: 02/12/2023

Views: 6502

Rating: 4 / 5 (51 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Zonia Mosciski DO

Birthday: 1996-05-16

Address: Suite 228 919 Deana Ford, Lake Meridithberg, NE 60017-4257

Phone: +2613987384138

Job: Chief Retail Officer

Hobby: Tai chi, Dowsing, Poi, Letterboxing, Watching movies, Video gaming, Singing

Introduction: My name is Zonia Mosciski DO, I am a enchanting, joyous, lovely, successful, hilarious, tender, outstanding person who loves writing and wants to share my knowledge and understanding with you.