Maison > développement back-end > C++ > Résultat de l'utilisation de l'opérateur sizeof en C++

Résultat de l'utilisation de l'opérateur sizeof en C++

王林
Libérer: 2023-09-10 08:41:02
avant
1349 Les gens l'ont consulté

Résultat de lutilisation de lopérateur sizeof en C++

L'opérateur Sizeof est l'un des opérateurs les plus couramment utilisés en langage C et est utilisé pour calculer la taille de toute structure de données ou type de données que nous transmettons. L'opérateur sizeof renvoie un type entier non signé et peut être appliqué aux types de données primitifs et composites. Nous pouvons utiliser directement l'opérateur sizeof sur un type de données et connaître la mémoire occupée par celui-ci -

Exemple

#include <bits/stdc++.h>
using namespace std;

int main() {
   cout << sizeof(int) << "\n";
   cout << sizeof(char) << "\n";
   cout << sizeof(float) << "\n";
   cout << sizeof(long) << "\n";
   return 0;
}
Copier après la connexion

Sortie

4
1
4
8
8
Copier après la connexion

En utilisant cette fonction, nous pouvons connaître l'espace occupé par n'importe quelle variable de ce type de données. La sortie dépend également du compilateur, car un compilateur 16 bits donnera une valeur différente pour int qu'un compilateur 32 bits.

Nous pouvons également appliquer cette opération à une expression -

Exemple

#include <bits/stdc++.h>
using namespace std;

int main() {
   cout << sizeof(int) << "\n";
   cout << sizeof(char) << "\n";
   cout << sizeof(float) << "\n";
   cout << sizeof(double) << "\n";
   cout << sizeof(long) << "\n";
   return 0;
}
Copier après la connexion

Sortie

4
4
Copier après la connexion

Comme vous pouvez le voir, la valeur précédente de x était 4, qui reste la même même après l'opération de préfixe. Tout cela est dû à l'opérateur sizeof, car cet opérateur est utilisé au moment de la compilation, il ne change pas la valeur de l'expression que nous appliquons.

Nécessité de la taille de l'opérateur

< p>la taille de l'opérateur a de nombreuses utilisations. Néanmoins, il est principalement utilisé pour déterminer la taille des types de données composites tels que les tableaux, les structures, les unions, etc.

Exemple

#include <bits/stdc++.h>

using namespace std;

int main() {
   int arr[] = {1, 2, 3, 4, 5}; // the given array

   int size = sizeof(arr) / sizeof(int); // calculating the size of array

   cout << size << "\n"; // outputting the size of given array
}
Copier après la connexion

Sortie

5
Copier après la connexion

Ici, nous calculons d'abord la taille de l'ensemble du tableau ou calculons la mémoire occupée par celui-ci. Nous divisons ensuite ce nombre par la taille du type de données ; dans ce programme, c'est un entier.

Le deuxième cas d'utilisation le plus important de cet opérateur est l'allocation de mémoire dynamique, nous utilisons donc l'opérateur sizeof lors de l'allocation d'espace.

Exemple< /h2>
#include <bits/stdc++.h>

using namespace std;

int main() {
   int* ptr = (int*)malloc(10 * sizeof(int)); // here we allot a memory of 40 bytes
   // the sizeof(int) is 4 and we are allocating 10 blocks
   // i.e. 40 bytes
}
Copier après la connexion

Conclusion

Dans cet article, nous discuterons de l'utilisation de l'opérateur sizeof et de son fonctionnement. Nous avons également écrit différents types de cas d'utilisation pour voir le résultat et en discuter. Nous avons implémenté un cas d'utilisation pour cet opérateur en C++. Nous pouvons écrire le même programme dans d'autres langages comme C, Java, Python etc. Nous espérons que cet article vous a été utile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal