Ligação interna com palavra-chave estática em C
eu seistatic
é uma palavra-chave sobrecarregada em C. Aqui, estou interessado apenas em seu uso como uma palavra-chave para impor vínculos internos.
Se você tiver uma variável global declarada em um.c
arquivo, qual é a diferença entre usarstatic
e não usandostatic
? De qualquer maneira, nenhum outro.c
O arquivo tem acesso à variável, portanto, a variável é basicamente "privada" ao arquivo, com ou sem a palavra-chave estática.
Por exemplo, se eu tiver um arquivofoo.c
e declaro uma variável global:
int x = 5;
Essa variávelx
está disponível apenas para codificar dentrofoo.c
(a não ser, é claro, que eu o declare em algum arquivo de cabeçalho compartilhado com oextern
palavra-chave). Mas se eu não o declarar em um arquivo de cabeçalho, qual seria a diferença se eu digitar:
static int x = 5
.
De qualquer maneira, parecex
tem ligação interna aqui. Então, eu estou confuso quanto ao propósito destatic
a respeito disso.