Toutes les variables définies à l’intérieur d’une fonction sont des variables locales à cette fonction.

La communication avec des variables du programme principal (ou du workspace) ou avec des variables d’autres fonctions se fait uniquement par les variables d’entrée et sortie de la fonction.

Toutefois, il est possible de déclarer certaines variables comme des variables globales.

Une variable globale peut être partagée entre un programme principal et plusieurs fonctions sans qu’il soit besoin de la spécifier parmi les variables d’entrée-sortie des différentes fonctions.

On déclare une variable globale grâce au mot clé global.

Par exemple

On déclare une variable globale g dans une fonction:

% Déclaration de la constante gravitationnelle en tant que variable globale
global g
g=1.6;
pos = position(5); % pos = -20

 

On utilise ensuite la variable globale g déclarer dans la fonction précédente :

function x=position(t,v0,x0)
global g

if nargin == 1
    v0=0;
    x0=0;
end

x=-0.5*g*t.^2+v0*t+x0;