Portée variable en C ++
Une portée est une région du programme et, en gros, il y a trois endroits où les variables peuvent être déclarées -
A l'intérieur d'une fonction ou d'un bloc appelé variables locales,
Dans la définition des paramètres de fonction que l'on appelle paramètres formels.
En dehors de toutes les fonctions appelées variables globales.
Nous apprendrons ce qu'est une fonction et son paramètre dans les chapitres suivants. Expliquons ici ce que sont les variables locales et globales.
Variables locales
Les variables déclarées à l'intérieur d'une fonction ou d'un bloc sont des variables locales. Ils ne peuvent être utilisés que par des instructions qui se trouvent à l'intérieur de cette fonction ou de ce bloc de code. Les variables locales ne sont pas connues pour fonctionner en dehors des leurs. Voici l'exemple utilisant des variables locales -
#include <iostream>
using namespace std;
int main () {
// Local variable declaration:
int a, b;
int c;
// actual initialization
a = 10;
b = 20;
c = a + b;
cout << c;
return 0;
}
Variables globales
Les variables globales sont définies en dehors de toutes les fonctions, généralement au-dessus du programme. Les variables globales conserveront leur valeur pendant toute la durée de vie de votre programme.
Une variable globale est accessible par n'importe quelle fonction. Autrement dit, une variable globale est disponible pour une utilisation dans tout votre programme après sa déclaration. Voici l'exemple utilisant des variables globales et locales -
#include <iostream>
using namespace std;
// Global variable declaration:
int g;
int main () {
// Local variable declaration:
int a, b;
// actual initialization
a = 10;
b = 20;
g = a + b;
cout << g;
return 0;
}
Un programme peut avoir le même nom pour les variables locales et globales mais la valeur de la variable locale à l'intérieur d'une fonction aura la préférence. Par exemple -
#include <iostream>
using namespace std;
// Global variable declaration:
int g = 20;
int main () {
// Local variable declaration:
int g = 10;
cout << g;
return 0;
}
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -
10
Initialisation des variables locales et globales
Lorsqu'une variable locale est définie, elle n'est pas initialisée par le système, vous devez l'initialiser vous-même. Les variables globales sont initialisées automatiquement par le système lorsque vous les définissez comme suit -
Type de données | Initialiseur |
---|---|
int | 0 |
carboniser | «\ 0» |
flotte | 0 |
double | 0 |
aiguille | NUL |
C'est une bonne pratique de programmation d'initialiser correctement les variables, sinon le programme produirait parfois un résultat inattendu.