
W poprzednim dziale była mowa na temat przekazywania zmiennych poprzez parametry, właściwie to nie wytłumaczyłem, dlaczego musimy to robić, odpowiedź znajduje się tutaj. Każda zmienna ma swój zasięg, czyli to gdzie jest widoczna w programie.
Taka zmienna jest widoczna w całym programie, w każdej funkcji w programie. Tworzy się ją w ciele programu(poza funkcjami). Przykładowy program obrazujący użycie zmiennych globalnych:
Jak widać zmienna globalną deklarujemy w ciele programu, poza funkcjami. Będzie ona widoczna w całym programie(zakres całego programu). Taka zmienna tworzona na czas działania całego programu. Podczas jej tworzenia(uruchamiania programu), jej wartość jest inicjowana wartością, którą jej przypiszemy, a jeżeli nic jej nie przypiszemy to wartość takiej zmiennej automatycznie się wyzeruje(zainicjuje się zerem).
Taka zmienna widoczna jest tylko w funkcji, gdzie ją utworzyliśmy. Taką zmienną deklarujemy wewnątrz funkcji(ciele funkcji) i tylko tam jest widoczna, nigdzie indziej nie można jej używać. Tworzona jest podczas jej deklaracji w funkcji i usuwana z pamięci podczas wyjścia z funkcji, w której została utworzona. Jeżeli nie zainicjujemy jej wartości to przyjmie aktualny układ bitów z miejsca pamięci, w którym została utworzona.