Wert der deklarierten, aber nicht initialisierten int-Variablen in c


grau

Ich bin neu bei C und benutze DevC ++ als meine IDE.

Ich habe gelernt, dass Variablen, die deklariert, aber keinem Wert zugewiesen wurden, mit einem zufälligen Wert initialisiert werden (mit Ausnahme von statischen und globalen Variablen, die mit 0 initialisiert werden).

Aber als ich das versuchte:

int i, j, k;             
printf("%d %d %d", i, j, k);

es druckte:

immer 0 für i; jede große zufällige ganze Zahl (immer anders) für j; eine große zufällige ganze Zahl (immer gleich) für k.

Hier ist die Ausgabe beim 5-maligen Ausführen des obigen Codes: 0 13308816 32764 0 12391312 32764 0 11408272 32764 0 11015056 32764 0 7541648 32764

Aber ich denke, diese sollten alle zufällige Werte (Müllwerte) drucken, die jedes Mal anders sind (wie für j).

Lakshitha Wisumperuma

C war immer sehr spezifisch in Bezug auf die Anfangswerte von Objekten. Wenn global oder statisch, werden sie auf Null gesetzt. Bei Auto ist der Wert  unbestimmt .

Verwandte Artikel


Wert einer nicht initialisierten Variablen in C ++

Huyen Das ist ziemlich einfach, aber ich kann es nicht erklären. Ich deklariere 4 Variablen und drucke sie in C ++ aus: #include <iostream> using namespace std; int main(){ int a, b, c, d; cout << "a = " << a << endl; cout << "b = " << b << endl; cou

Ist der Wert einer nicht initialisierten Variablen immer "Müll"?

samuelbrody1249 Gibt es Fälle, in denen es in Ordnung ist, eine Variable zu verwenden, wenn sie nicht initialisiert wurde, oder wird immer davon ausgegangen, dass es sich um Müll handelt? Ein Fall wäre zum Beispiel: // global example? // static example? // ext

Umfang der nicht initialisierten Variablen in JavaScript

Yamcha Ich kann nicht verstehen, warum sich dieser Code so verhält, wie er ist: for (var i = 1; i < 3; i++) { var j; if (!j) { j = 1; } else { alert("why are we here? j shouldn't be defined but it's " + j); } } ( jsFiddle ) Wen

Perl - Verwendung der nicht initialisierten Variablen $ftp

Cory Kleiser Ich erhalte eine Fehlermeldung, wenn ich das folgende Perl-Skript ausführe. Der Fehler lautet: Verwendung eines nicht initialisierten Wertes im Werkzeug bei AfterGauss.pl Zeile 54. Zeile 54 ist $ftp->put($fpath1) || die $ftp->message;. Gibt es etw