Em algumas ocasiões um programa em C pode exigir o uso de uma variável global,
que como sabemos estas variáveis podem ser usadas por todo o programa,
em qualquer bloco de código. Estas variáveis estão áptas a manter seus valores
enquanto o programa estiver sendo executado.
Para criar uma variável global, basta declará-la fora de todas as funções do programa,
de preferência no início, sendo que sua declaração pode ser feita antes da função main();
desde que não seja usada em alguma função do programa.
Devemos evitar que o nome de uma variável global seja o mesmo que de uma local,
evitando assim conflitos entre as duas onde a referência se dará a variável local anulando os efeitos da global.
Já que variáveis globais ocupam espaços na memória durante todo tempo em que o programa
está em execução, elas devem ser evitadas, isto torna um desperdício de memória inútil,
procure sempre substituir por uma local se possível.
Más o prograama aqui proposto traz praticamente uma novidade,
inicializei um vetor de ponteiro para char na função copia_valores ( ); e
fiz a cópia no vetor de ponteiro char *str [ 10 ]; que foi declarado como global,
fiz o mesmo com o vetor de inteiro Vet [ 10 ]; também declarado nesta mesma função,
fazendo a cópia no vetor global de inteiros, de nome
Vetor [ 10 ]. Note que o procedimento normal seria passá-los como parâmetros para a função repr_matriz ( );
onde serão imprimidos por printf(); esta alternativa é bem válida principalmente quando já temos uma função
com vários parâmetros e precisamos passar outros valores, vindo tornar o código mais complicado.
Pergunta
roccoC/C++
Em algumas ocasiões um programa em C pode exigir o uso de uma variável global,
que como sabemos estas variáveis podem ser usadas por todo o programa,
em qualquer bloco de código. Estas variáveis estão áptas a manter seus valores
enquanto o programa estiver sendo executado.
Para criar uma variável global, basta declará-la fora de todas as funções do programa,
de preferência no início, sendo que sua declaração pode ser feita antes da função main();
desde que não seja usada em alguma função do programa.
Devemos evitar que o nome de uma variável global seja o mesmo que de uma local,
evitando assim conflitos entre as duas onde a referência se dará a variável local anulando os efeitos da global.
Já que variáveis globais ocupam espaços na memória durante todo tempo em que o programa
está em execução, elas devem ser evitadas, isto torna um desperdício de memória inútil,
procure sempre substituir por uma local se possível.
Más o prograama aqui proposto traz praticamente uma novidade,
inicializei um vetor de ponteiro para char na função copia_valores ( ); e
fiz a cópia no vetor de ponteiro char *str [ 10 ]; que foi declarado como global,
fiz o mesmo com o vetor de inteiro Vet [ 10 ]; também declarado nesta mesma função,
fazendo a cópia no vetor global de inteiros, de nome
Vetor [ 10 ]. Note que o procedimento normal seria passá-los como parâmetros para a função repr_matriz ( );
onde serão imprimidos por printf(); esta alternativa é bem válida principalmente quando já temos uma função
com vários parâmetros e precisamos passar outros valores, vindo tornar o código mais complicado.
Veja abaixo uma imagem do programa em execução:
http://2.bp.blogspot.com/-ZhytnC43g3c/VTKdskEj3JI/AAAAAAAACNc/oHlrQhRLc5s/s1600/glob.PNG
Veja abaixo o link do código do programa:
http://codigosfontes-ccplus-plus.blogspot.com.br/2015/04/variaveis-globais.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.