Alright, I wanna know why this code is working, I just realized that I have two variables with the same name within the same scope.
I\'m using g++ (gcc 4.4).
The k
in the inner for loop shadows (or hides) the k
in the outer for loop.
You can declare multiple variables with the same name at different scopes. A very simple example would be the following:
int main()
{
int a; // 'a' refers to the int until it is shadowed or its block ends
{
float a; // 'a' refers to the float until the end of this block
} // 'a' now refers to the int again
}