C {} Declarar variáveis locais dentro e fora, endereço e uso de valor
Código e resultados em execução
Olhe para o código primeiro:
#include <iostream>
using namespace std;
int main()
{
int i = 5;
int j = 6;
cout << "outer i address is : "<< &i << endl;
cout << "outer j address is : "<< &j << endl;
cout << "out1 i+j = " <<i+j << endl;
for(int i = 0;i<5;i++)
{
cout << "inner i address & value is : " << &i << "------"<<i << endl;
cout <<"inner1 i+j = " <<i+j << endl;
for(int j = 4;j<5;j++)
{
cout << "inner j address & value is : " << &j << "------"<<j << endl;
cout << "inner2 i+j = " <<i+j << endl;
}
}
cout << "out2 i+j = " <<i+j << endl;
cout << "******************************************************************" << endl;
return 0;
}
O acima é principalmente para ver a mudança e o uso do endereço e valor de ij após a declaração repetida dentro e fora do loop for.
Olha o resultado
para concluir
1. O nome da variável é o mesmo, mas o endereço é diferente:
2. A variável interna é usada primeiro e a atribuição não tem efeito sobre a externa.