Ciao a tutti, qualcuno può spiegarmi perchè se vado a stampare queste variabili

int k; int b=0 ;
cout << k << " " << b << "\n";
cout << "nel ciclo" << "\n";
while(k<9)
{
b = b + k;
k++;

cout << k << " " << b << "\n";
};

k fuori dal ciclo mi vale 2??
se la dichiaro solo int non dovrebbe valere zero?
questop è il output:


2 0
nel ciclo
3 2
4 5
5 9
6 14
7 20
8 27
9 35
Premere un tasto per continuare . . .


strano o funziona proprio così?

Ciao e grazie giuseppe;