Qu'est-ce qu'une variable?

Une variable est le nom d'un endroit dans la mémoire de l'ordinateur où vous stockez des données.

Imaginez un très grand entrepôt avec beaucoup de baies de rangement, tables, étagères, pièces spéciales, etc. Ce sont tous des endroits où vous pouvez stocker quelque chose. Imaginons que nous ayons une caisse de bière dans l'entrepôt. Où est-il situé exactement?

Nous ne dirions pas qu'il est stocké à 31 '2 "du mur ouest et à 27' 8" du mur nord. En termes de programmation, nous ne dirions pas non plus que mon salaire total payé cette année est stocké dans quatre octets à partir de l'emplacement 123 476 542 732 dans la RAM.

Données sur un PC

L'ordinateur placera des variables à différents endroits à chaque exécution de notre programme. Cependant, notre programme sait exactement où se trouvent les données. Pour ce faire, nous créons une variable pour y faire référence, puis nous laissons le compilateur gérer tous les détails désordonnés sur son emplacement réel. Il est beaucoup plus important pour nous de savoir quel type de données nous stockons dans l'emplacement.

Dans notre entrepôt, notre caisse pourrait se trouver dans la section 5 de l'étagère 3 dans la zone des boissons. Sur le PC, le programme saura exactement où se trouvent ses variables.

Les variables sont temporaires

Ils existent aussi longtemps qu'ils sont nécessaires et sont ensuite éliminés. Une autre analogie est que les variables sont comme des nombres dans une calculatrice. Dès que vous appuyez sur les boutons d'effacement ou de mise hors tension, les numéros d'affichage sont perdus.

Quelle est la taille d'une variable

Aussi grand que nécessaire et pas plus. La plus petite variable peut être un bit et la plus grande est des millions d'octets. Les processeurs actuels traitent les données en blocs de 4 ou 8 octets à la fois (processeurs 32 et 64 bits), donc plus la variable est grande, plus il faudra de temps pour la lire ou l'écrire. La taille de la variable dépend de son type.

Qu'est-ce qu'un type de variable?

Dans les langages de programmation modernes, les variables sont déclarées être d'un type.

Mis à part les nombres, le CPU ne fait aucune distinction entre les données dans sa mémoire. Il le traite comme une collection d'octets. Les processeurs modernes (à l'exception de ceux des téléphones mobiles) peuvent généralement gérer à la fois l'arithmétique entière et à virgule flottante dans le matériel. Le compilateur doit générer différentes instructions de code machine pour chaque type, donc savoir ce que le type de variable l'aide à générer du code optimal.

Quels types de données peut contenir une variable?

Les types fondamentaux sont ces quatre.

  • Entiers (à la fois signé et non signé) 1,2,4 ou 8 octets. Généralement appelé ints.
  • Point flottant Numéros jusqu'à 8 octets.
  • Octets. Celles-ci sont organisées en 4 ou 8 (32 ou 64 bits) et lues dans et hors des registres du CPU.
  • Texte chaînes, jusqu'à des milliards d'octets. Les CPU ont des instructions spéciales pour rechercher dans de grands blocs d'octets en mémoire. C'est très pratique pour les opérations de texte.

Il existe également un type de variable général, souvent utilisé dans les langages de script.

  • Une variante - Cela peut contenir n'importe quel type mais est plus lent à utiliser.

Exemple de types de données

  • Tableaux de types: unidimensionnels comme des tiroirs dans une armoire, bidimensionnels comme des boîtes de tri de bureau de poste ou tridimensionnels comme un tas de caisses de bière. Il peut y avoir n'importe quel nombre de dimensions, jusqu'aux limites du compilateur.
  • Enum qui est un sous-ensemble restreint d'entiers. En savoir plus sur ce qu'est une énumération.
  • Les structures sont une variable composite où plusieurs variables sont regroupées dans une grande variable.
  • Les flux fournissent un moyen de gérer les fichiers. Ils sont une forme de chaîne.
  • Les objets sont comme des structures mais avec une gestion des données beaucoup plus sophistiquée.

Où sont stockées les variables?

En mémoire mais de différentes manières, selon la façon dont ils sont utilisés.

  • Globalement. Toutes les parties du programme peuvent accéder et modifier la valeur. C'est ainsi que les langues plus anciennes comme Basic et Fortran géraient les données et ce n'est pas considéré comme une bonne chose. Les langages modernes ont tendance à décourager le stockage mondial bien qu'il soit toujours possible.
  • Sur le tas. Il s'agit du nom de la zone principale utilisée. En C et C ++, l'accès à celui-ci se fait via des variables de pointeur.
  • Sur la pile. La pile est un bloc de mémoire utilisé pour stocker les paramètres passés dans les fonctions et les variables qui existent localement aux fonctions.

Conclusion

Les variables sont essentielles à la programmation procédurale, mais il est important de ne pas trop vous accrocher à l'implémentation sous-jacente à moins que vous ne programmiez des systèmes ou n'écriviez des applications qui doivent s'exécuter dans une petite quantité de RAM.

Nos règles concernant les variables:

  1. Sauf si vous êtes serré sur le bélier ou si vous avez de grands réseaux, restez avec des pouces plutôt qu'avec octet (8 bits) ou court int (16 bits). Surtout sur les processeurs 32 bits, il y a une pénalité de retard supplémentaire dans l'accès à moins de 32 bits.
  2. Utilisez des flotteurs au lieu de doubles, sauf si vous avez besoin de la précision.
  3. Évitez les variantes, sauf si c'est vraiment nécessaire. Ils sont plus lents.