static
no way to compare when less than two revisions
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
— | static [2023/09/12 16:14] (atual) – criada - edição externa 127.0.0.1 | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
+ | ====== Definição static ====== | ||
+ | Sintaxe: | ||
+ | |||
+ | '' | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Como padrão toda variável definida dentro de uma função é alocada na pilha interna de execução da função. Ao final da função a pilha é liberada, liberando assim a memória alocada pela variável. Na próxima chamada à função é feita uma nova alocação na pilha assim por diante. | ||
+ | |||
+ | Deve-se indicar através da palavra **'' | ||
+ | |||
+ | Veja o exemplo: | ||
+ | |||
+ | <code c> | ||
+ | /* programa static.c */ | ||
+ | #include < | ||
+ | |||
+ | int somatorio (int, int); | ||
+ | |||
+ | int main (void) | ||
+ | { | ||
+ | int iValor_a; | ||
+ | int i; | ||
+ | |||
+ | i = 1; | ||
+ | while (1) | ||
+ | { | ||
+ | printf (" | ||
+ | scanf (" | ||
+ | if (iValor_a == 0) | ||
+ | { | ||
+ | | ||
+ | } | ||
+ | printf (" | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | |||
+ | int somatorio (int iContador, int iValor) | ||
+ | { | ||
+ | | ||
+ | iSoma deve ser guardado na memória até o final da execução do programa */ | ||
+ | if (iContador == 1) | ||
+ | { | ||
+ | iSoma = iValor; | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | iSoma += iValor; /* ... nas demais execuções, | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | </ |
static.txt · Última modificação: 2023/09/12 16:14 por 127.0.0.1