Я изучал статическую переменную, и я натолкнулся на этот код на википедию. Статический int x сохраняет это значение во всей программе. И даже когда мы объявляем его глобально, он сохранит предыдущие значения. Означает ли это, что статические и глобальные переменные рассматриваются как одни и те же. А если нет, то как они работают?Объявление глобальной и статической переменной
#include <stdio.h>
void func() {
static int x=0;
// x is initialized only once across three calls of func()
printf("%d\n", x); // outputs the value of x
x = x + 1;
}
int main(int argc, char *argv[]) {
func(); // prints 0
func(); // prints 1
func(); // prints 2
return 0;
}