Introduzione alla parola chiave statica in C

La parola chiave statica in C varia in modo diverso in quanto è una parola chiave che può essere utilizzata sia con le variabili che con le funzioni. Pertanto, è assolutamente necessario ottenere una demarcazione su entrambi per ottenere le caratteristiche effettive o il comportamento della parola chiave specificamente in termini di linguaggio C. È un po 'difficile ottenere la comprensione completa in modo così completo per un principiante, quindi guideremo attraverso la sintassi, funzionando effettivamente come funziona in C, alcune norme e regole da seguire in quanto può essere un po' confuso ottenere quando farlo usare per ambito della variabile e quando utilizzare per l'ambito del blocco funzionale.

Sintassi

1. Sintassi della parola chiave statica in C durante la definizione di una variabile:

static
static
Examples of syntax for static variables:
static int run = 0;
int static sleep = 0;

2. Sintassi della parola chiave statica in C durante la definizione di una funzione:

static
static
Examples of syntax for static functions:
static void run ()
(
)
void static sleep ()
(
)

Come funziona la parola chiave statica in C?

Fondamentalmente, ci sono due modi in cui la parola chiave statica funziona in termini di C.

  • La parola chiave statica all'interno di una funzione.
  • La parola chiave statica all'esterno di una funzione.

1. Parola chiave statica all'interno di una funzione

La dichiarazione della variabile all'interno di una funzione è associata al tempo di compilazione e alla durata di memorizzazione della variabile all'interno di una chiamata di funzione. In parole semplici, le variabili definite come statiche estendono il loro ambito di applicazione per più chiamate di funzione e una volta dichiarate non possono perdere il suo ambito fino al termine dell'esecuzione del programma. Inizia a definire il suo ambito al momento della compilazione stessa.

Esempio

# include
int main ()
(
run ();
run ();
run ();
)
void run ()
(
static int running = 0;
++running;
printf ("The function \"run\" was called %d times.\n", running);
)

Produzione:

2. Parola chiave statica al di fuori di una funzione

Una volta che la parola chiave statica viene dichiarata all'esterno di una funzione, ne limita l'ambito della variabile e diventa visibile solo al file corrente, il che significa che la funzione si limiterà al suo stesso file di origine. L'accesso a quella variabile o funzione statica ottiene il vincolo da un altro file di origine.

Sebbene sia considerato buono dichiarare una funzione come statica che aiuta l'incapsulamento dei dati in un ambito specifico. Le persone con background OOP o Java possono facilmente metterlo in relazione con il funzionamento delle parole chiave private e pubbliche.

Esempio

Per definire le variabili nella funzione esterna, ovvero a livello globale, è necessario definire almeno una parola chiave statica.

Definire una variabile statica in un file di origine e la stessa variabile nella seconda variabile in un altro file di origine.

Source1.c
static int sleep = 0;
Source2.c
static int sleep= 0;
static void sleep ()
(
static int sleeping = 0;
++ sleeping;
printf (“the function \ “sleep\” was called %d times.\n”, sleeping);
)

Produzione:

Specifica della dimensione minima di un parametro array

C'è un uso molto essenziale che ignoriamo a volte diamo un'occhiata in esso.

Possiamo anche dire al compilatore il parametro di archiviazione per la dichiarazione minima di elementi all'interno di un puntatore a matrice a una funzione. Ma questo caso è seguito molto raramente (seguito fino al compilatore C99).

Esempio

Void print Array (int myArray (static 10), int size)
(
int i;
printf (“(“);
for (i<0; i (
printf (“%d”, myArray(i));
)
printf (“) \n”);
)
Void print Array (int myArray (static 10), int size)
(
int i;
printf (“(“);
for (i<0; i (
printf (“%d”, myArray(i));
)
printf (“) \n”);
)

Fondamentalmente, questo informerà che l'argomento non sarà nullo.

Norme e regolamenti per la parola chiave statica in C

1. In termini di variabile statica

  • Una variabile statica rimane sempre attiva quando un programma è in esecuzione a differenza delle parole chiave automatiche e riservate.
  • L'archiviazione e l'allocazione della memoria si verificano nel segmento di dati, non nel segmento di stack.
  • Per impostazione predefinita, se la variabile non è dichiarata con alcun valore per impostazione predefinita, verrà definita esplicitamente dal compilatore come 0.
  • La dichiarazione delle variabili statiche viene eseguita principalmente utilizzando valori letterali costanti.
  • Si ritiene principalmente che non si debba definire una variabile statica all'interno di una funzione, il che rende un po 'complesso l'intero modulo funzionale.

2. In termini di funzione statica

  • La dichiarazione della variabile è sostanzialmente considerata globale per impostazione predefinita, quindi l'uso di una parola chiave statica con una funzione la rende limitata nell'ambito limitando l'ambito all'interno dello stesso file di origine.
  • Una buona caratteristica di rendere statica la funzione è la riusabilità, cioè possiamo chiamare la stessa funzione più volte ogni volta che è necessario per l'esecuzione.

vantaggi

  • Considerare una variabile come statica è vantaggiosa nel senso che aiuta a ottimizzare l'intero flusso di codice.
  • Riusabilità e ridefinizione aiutano il compilatore a chiamare internamente qualsiasi variabile senza far dominare altre parole chiave come extern.
  • Un altro vantaggio è aumentare la leggibilità in modo tale che il futuro ottenga il riconoscimento che il file è dichiarato statico e non accessibile da nessun altro file o file sorgente.
  • Inoltre impedisce molto di dichiarare il file c, ovvero di riproporlo come qualche altra variabile esterna.

Conclusione

  • Il termine "statico" ha la sua tendenza a essere considerato sensato o insensato. Il diverso linguaggio di programmazione ha significati diversi relativi solo alla parola chiave statica. Linguaggio orientato agli oggetti, si comporta molto bene con una proprietà di incapsulamento.
  • In termini di C, C # e C ++ Ha una natura diversa. Alcuni considerano l'uso di elettricità statica il migliore a causa dei vantaggi di ottimizzazione, riusabilità, limitazione dell'ambito. La maggior parte dei quali è il riconoscimento del file leggibile finale.
  • Successivamente, alcuni utenti ingenui possono facilmente capire se due file di origine non corrispondono confrontando il contenuto interno delle funzioni statiche e della variabile statica come per l'errore di compilazione.
  • Ma in termini di C, questo non è considerato un modo sicuro perché la comunicazione interna tra i thread diventa pericolosa e difficile poiché alla fine sta diventando una variabile globale. Pertanto a volte è considerato un modo non convenzionale in termini di C di utilizzare una parola chiave statica in C.

Articoli consigliati

Questa è una guida alla Parola chiave statica in C. Qui discutiamo di come la parola chiave statica funziona in C con le Regole e i Regolamenti. Puoi anche leggere il seguente articolo per saperne di più -

  1. Variabili in C
  2. Scambiare in C
  3. Funzioni matematiche in C.
  4. Numero inverso in C
  5. Scambiare in PHP
  6. Parole chiave PHP
  7. Primi 5 attributi di eventi HTML con esempi

Categoria: