Úvod do statického kľúčového slova v C

Statické kľúčové slovo v C sa líši odlišným spôsobom tak, že je to kľúčové slovo, ktoré možno použiť s premennými, ako aj s funkciami. Preto je veľmi potrebné získať vymedzenie oboch, aby sa získali skutočné charakteristiky alebo správanie kľúčového slova konkrétne z hľadiska jazyka C. Je trochu ťažké získať úplné porozumenie tak dôkladne pre začiatočníkov, aby sme prešli syntaxou, skutočným spôsobom fungovania v jazyku C, niektorými normami a pravidlami, ktoré treba dodržiavať, pretože môže byť trochu mätúce získať čas, kedy ho použiť. rozsah premennej a kedy použiť na rozsah funkčného bloku.

syntax

1. Syntax statického kľúčového slova v C pri definovaní premennej:

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

2. Syntax statického kľúčového slova v C pri definovaní funkcie:

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

Ako funguje statické kľúčové slovo v jazyku C?

V zásade existujú dva spôsoby, ako statické kľúčové slovo funguje v zmysle C.

  • Statické kľúčové slovo vo funkcii.
  • Statické kľúčové slovo mimo funkcie.

1. Statické kľúčové slovo vo funkcii

Vyhlásenie premennej v rámci funkcie je spojené s časom kompilácie a trvaním uloženia premennej v rámci volania funkcie. Jednoducho povedané, premenné definované ako statické rozširujú svoj rozsah pre viacnásobné volania funkcií a akonáhle sú deklarované, nemôžu stratiť svoj rozsah až do konca vykonávania programu. Svoj rozsah začína definovať v čase kompilácie.

príklad

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

Výkon:

2. Statické kľúčové slovo mimo funkcie

Akonáhle je statické kľúčové slovo deklarované mimo funkcie, obmedzuje to rozsah premennej a stáva sa viditeľným iba pre aktuálny súbor, čo znamená, že funkcia obmedzí svoj rozsah na samotný zdrojový súbor. Prístup k tejto statickej premennej alebo funkcii sa obmedzí z iného zdrojového súboru.

Aj keď sa považuje za dobré uviesť funkciu ako statickú, ktorá pomáha pri zapuzdrení údajov do konkrétneho rozsahu. Ľudia z prostredia OOP alebo z javy ho môžu ľahko spojiť s fungovaním súkromného a verejného kľúčového slova.

príklad

Na definovanie premenných vo vonkajšej funkcii, tj na globálnej úrovni, musíme definovať aspoň statické kľúčové slovo.

Definujte jednu statickú premennú v jednom zdrojovom súbore a tú istú premennú v druhej premennej v inom zdrojovom súbore.

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);
)

Výkon:

Zadanie minimálnej veľkosti parametra poľa

Existuje jedno veľmi dôležité použitie, ktoré niekedy ignorujeme a pozrime sa na to.

Môžeme kompilátorovi oznámiť funkciu úložného priestoru pre minimálne deklarovanie prvkov vo vnútri ukazovateľa poľa aj funkcii. Tento prípad sa však sleduje veľmi zriedka (až do kompilátora C99).

príklad

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”);
)

V podstate to bude informovať, že argument nebude neplatný.

Pravidlá a predpisy pre statické kľúčové slovo v C

1. Z hľadiska statickej premennej

  • Statická premenná zostáva nažive, keď je program v bežnom stave, na rozdiel od automatických a vyhradených kľúčových slov.
  • K ukladaniu a alokácii pamäte dochádza v segmente údajov, nie v segmente zásobníkov.
  • V predvolenom nastavení, ak premenná nie je deklarovaná s nejakou hodnotou v predvolenom nastavení, bude definovať explicitne kompilátor ako 0.
  • Vyhlásenie statických premenných sa väčšinou robí pomocou konštantných literálov.
  • Primárne sa predpokladá, že by sme nemali definovať statickú premennú vo funkcii, ktorá väčšinou robí celý funkčný modul trochu zložitejším.

2. Z hľadiska statickej funkcie

  • Vyhlásenie premennej sa v predvolenom nastavení považuje za globálne, preto použitie statického kľúčového slova s ​​funkciou obmedzuje rozsah v rámci toho istého zdrojového súboru.
  • Jednou z dobrých charakteristík, ako urobiť funkciu statickou, je opakovaná použiteľnosť, tj rovnakú funkciu môžeme volať viackrát, kedykoľvek je to potrebné na vykonanie.

výhody

  • Zváženie premennej ako statickej je výhodné v tom zmysle, že pomáha pri optimalizácii celého toku kódu.
  • Opakovaná použiteľnosť a redefinícia pomáhajú kompilátoru volať ľubovoľnú premennú interne bez toho, aby ovládli akékoľvek iné kľúčové slovo, ako je externé.
  • Jednou z ďalších výhod je zvýšenie čitateľnosti tak, že budúcnosť dostane potvrdenie, že súbor je vyhlásený za statický a nie je prístupný iným súborom alebo zdrojovým súborom.
  • Tiež to veľa zabraňuje deklarovaniu súboru c, tj jeho opätovnému vytvoreniu ako inej externej premennej.

záver

  • Pojem „statický“ má svoj vlastný trend, či sa má považovať za zmysluplný alebo bez zmyslu. Rôzny programovací jazyk má rôzne významy súvisiace iba so statickým kľúčovým slovom. Objektovo orientovaný jazyk sa správa veľmi dobre so zapuzdrovacou vlastnosťou.
  • Pokiaľ ide o C, C # a C ++, má odlišnú povahu. Niektorí považujú použitie statiky za najlepšie kvôli výhodám, ktoré sa môže pochváliť ako optimalizácia, opätovné použitie, obmedzenie rozsahu. Väčšina z nich je potvrdením konečného čitateľného súboru.
  • Neskôr, vrátane niektorých naivných používateľov, sa dá ľahko zistiť, či sa dva zdrojové súbory nezhodujú zhodovaním interného obsahu statických funkcií a statickej premennej, ako to bude pri kompilácii.
  • Pokiaľ ide o C, nepovažuje sa to za bezpečný a bezpečný spôsob, pretože interná komunikácia medzi vláknami sa stáva nebezpečnou a náročnou, pretože sa v konečnom dôsledku stáva globálnou premennou. Preto sa niekedy nepovažuje za také konvenčné použiť v statickom kľúčovom slove v C.

Odporúčané články

Toto je príručka k statickému kľúčovému slovu v C. Tu diskutujeme o tom, ako statické kľúčové slovo funguje v jazyku C, s pravidlami a nariadeniami. Viac informácií nájdete aj v nasledujúcom článku -

  1. Premenné v C
  2. Výmena v C
  3. Matematické funkcie v C
  4. Reverzné číslo v C
  5. Výmena v PHP
  6. Kľúčové slová PHP
  7. Top 5 atribútov udalostí HTML s príkladmi

Kategórie: