Dies ist ein Programm, das ich im Netz stieß, die den Wert berechnet.Wie können wir sicher sein, dass der Wert von 'b' am Anfang in diesem Code 0 ist
#include <stdlib.h>
#include <stdio.h>
long a=10000,b,c=2800,d,e,f[2801],g;//--------HERE the value of b---------//
int main()
{
printf("\nValue of b: %ld", b);
getch();
for(;b-c;)
f[b++]=a/5;
for(;d=0,g=c*2;c-=14,printf("%.4d",e+d/a),e=d%a)
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
}
Der berechnete Wert ist korrekt. Aber wie könnte der Programmierer sicher sein, dass der Anfangswert von b
0
wäre?
Es scheint überhaupt nicht initialisiert zu werden!
Gibt es etwas Spezielles über den Anfangswert globaler Variablen?
Globale Variablen werden standardmäßig auf Null initialisiert. –