Estou estudando alguns materiais e surgiram algumas dúvidas.
No artigo "C for Embedded Systems Programming - AMF-ENT-T0001 - Derrick Klotz" encontrei as seguintes colocações sobre os tipos de variáveis:
► Global
• Global storage and global scope
► Static
• Global storage and local scope
► Local
• Local storage and local scope
Me corrijam caso estiver errado por favor.
- variáveis "global" são aquelas que declaramos antes do "main" e que podem ser acessadas de qualquer parte do código.
- "static" são variáveis que apesar de armazenadas de maneira global são acessíveis somente a algumas funções.
- "local" são as variáveis declaradas dentro de funções ou trechos do código. Correto?
Quais os benefícios e utilizações de variáveis "Static"?
Variáveis "volatile" impedem a otimização pelo compilador correto?
"register" auxilia compilador de que a varável e acessada constantemente e deve ser armazenada nos registradores disponíveis?
"const" leva o compilador a salvar os valores da variável da memória de programa e não na RAM, correto?
Qual a aplicação prática de uma variável "const volatile"?
Grato.
--
Haroldo L. M. Amaral
Mestrando em Eng. Elétrica - UNESP Bauru
Tecnólogo em Sistemas Biomédicos - FATEC Bauru
Técnico em Eletrônica - CTI/UNESP Bauru