Jump to content
Fórum Script Brasil
  • 0

VARIÁVEIS GLOBAIS


roccoC/C++

Question

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 to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...