可能重複:
Default values of int when not initialized in c. why do i get different outputs?Ç生成隨機值INT變量
初學者所以要律soft..am編譯下面一個簡單的代碼,我不分配給任何值我變量但C程序會生成一些隨機值,爲什麼會這樣?(只有第二個變量產生隨機整數)
那麼這些值來自哪裏?
#include<stdio.h>
main(void) {
int var1;
int var2;
printf("Var1 is %d and Var2 is %d.", var1, var2);
return 0; //Book says I should use this for getting an output but my compiler anyways compile and return me values whether I use it or not
}
//Output 1st compiled: var1 = 19125, var2 = 8983
//Output 2nd compiled: var1 = 19125, var2 = 9207
//Output 2nd compiled: var1 = 19125, var2 = 9127
你在這裏有什麼是*不*隨機;它是根據C標準(3.19.2)定義的**不確定**。如果你想要一個僞隨機數,使用rand()。如果你想要一個*真實的*僞隨機數,是一個有福的加密庫。 – WhozCraig