Quando precisamos de uma variável de valor efetivo entre chamadas
de funções, usamos com efeito o modificador static.
Sabemos que variáveis locais só podem ser usadas dentro da função
onde foi declarada e variáveis globais podem ser usadas sem problemas
em qualquer função dentro do mesmo programa.
Apesar de uma variável static local ser reconhecida apenas no bloco
de código onde foi declarada, ao contrário de variáveis globais,
como mencionei acima, o programador pode se aproveitar do valor
no qual ela foi inicializada em outras funções entre quantas chamadas forem necessárias,
aliás é muito correto e quase sempre necessário inicializar uma variável static local.
No programa abaixo mostro dois exemplos aplicando o modificador
static a variáveis locais.
No primeiro dentro da função Contador(); não inicializado por mim,
más pelo compilador que automaticamente iniciou a variável static int n em 0,
e que é incrementada a cada chamada, temos um contador até 5.
No segundo dentro da função Mult(); temos os primeiros 5 múltiplos
de 3.
Veja abaixo uma imagem do programa em funcionamento:
Pergunta
roccoC/C++
Quando precisamos de uma variável de valor efetivo entre chamadas
de funções, usamos com efeito o modificador static.
Sabemos que variáveis locais só podem ser usadas dentro da função
onde foi declarada e variáveis globais podem ser usadas sem problemas
em qualquer função dentro do mesmo programa.
Apesar de uma variável static local ser reconhecida apenas no bloco
de código onde foi declarada, ao contrário de variáveis globais,
como mencionei acima, o programador pode se aproveitar do valor
no qual ela foi inicializada em outras funções entre quantas chamadas forem necessárias,
aliás é muito correto e quase sempre necessário inicializar uma variável static local.
No programa abaixo mostro dois exemplos aplicando o modificador
static a variáveis locais.
No primeiro dentro da função Contador(); não inicializado por mim,
más pelo compilador que automaticamente iniciou a variável static int n em 0,
e que é incrementada a cada chamada, temos um contador até 5.
No segundo dentro da função Mult(); temos os primeiros 5 múltiplos
de 3.
Veja abaixo uma imagem do programa em funcionamento:
http://4.bp.blogspot.com/-YXL-UtVVcmM/VwkuSygNZBI/AAAAAAAACr0/giVm-UDw0ZkI0zP_42jrhfUOL2bW-PD9A/s1600/static.PNG
Veja abaixo o link do código do programa:
http://codigosfontes-ccplus-plus.blogspot.com.br/2016/04/quando-precisamos-de-uma-variavel-de.html
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.