La portée d'une variable fait référence à la plage de validité de la variable, qui est la plage de codes que les variables définies par l'utilisateur peuvent utiliser, elle est étroitement liée à l'emplacement ; de la définition de la variable.
作用域
décrit les variables du point de vue de l'espace. Selon différentes portées, les variables peuvent être divisées en variables locales et variables globales.
1. Variables locales
Les variables locales sont des variables définies à l'intérieur d'une fonction (ou d'un bloc de code), également appelées variables internes, une variable locale. n'est accessible et utilisé que dans la fonction (ou le bloc de code) dans lequel il est défini, et ne peut pas être utilisé par d'autres fonctions.
La portée d'une variable locale est limitée au bloc de code dans lequel elle est décrite : du lieu de description jusqu'à la fin du bloc de code. Il est illégal d'utiliser de telles variables après avoir quitté la fonction.
Exemple :
int f1(int a) { int b,c; …… }a,b,c作用域 int f2(int x) { int y,z; }x,y,z作用域 main() { int m,n; }
Explication : a est un paramètre formel, b, c sont des variables générales dans le cadre de f1, a, b, c sont valides, ou a, b ; , c La portée de la variable est limitée à f1. De la même manière, la portée de x, y, z est limitée à f2 ; la portée de m, n est limitée à la fonction principale.
Notez que les variables portant le même nom ne sont pas autorisées dans la même portée.
2. Variables globales
Les variables globales sont des variables déclarées dans l'environnement global, et leur portée s'étend du point de définition jusqu'à la fin du programme. de fichier ; il occupe des unités de stockage pendant toute l’exécution du programme.
Les variables globales modifient la valeur des variables globales dans une fonction et peuvent être partagées par d'autres fonctions ; cela équivaut à transmettre des données entre fonctions.
Exemple :
int a,b; void f1() { …… } float x,y; int fz() { …… } main() { …… }
Explication : a, b, x, y sont toutes des variables externes définies en dehors de la fonction, et ce sont toutes des variables globales. Cependant, x et y sont définis après la fonction f1, et il n'y a aucune description de x et y dans f1, ils ne sont donc pas valides dans f1. a, b sont définis au début du programme source, ils peuvent donc être utilisés sans explication dans f1, f2 et main.
Exemple de code :
Saisissez la longueur, la largeur et la hauteur l,w,h du cube. Trouvez le volume et les aires des trois faces x*y, x*z, y*z.
#include <stdio.h> int s1,s2,s3;//全局变量 int vs( int a,int b,int c) { int v;//局部变量 v=a*b*c; s1=a*b; s2=b*c; s3=a*c; return v; } main() { int v,l,w,h;//局部变量 printf("\n分别输入长度l、宽度w和高度h:\n"); scanf("%d%d%d",&l,&w,&h); v=vs(l,w,h); printf("面积1为:%d,面积2为:%d,面积3为:%d\n",s1,s2,s3); printf("体积为:%d",v); }
Sortie :
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!