Uvod v statično ključno besedo v C

Statična ključna beseda na C se razlikuje drugače, tako da gre za ključno besedo, ki jo je mogoče uporabiti tako s spremenljivkami kot tudi s funkcijami. Zato je zelo potrebno, da dobimo razmejitev obeh, da dobimo dejanske značilnosti ali vedenje ključne besede posebej glede jezika C. Za začetnika je težko razumeti tako temeljito razumevanje, zato se bomo vozili po sintaksi, dejanski o tem, kako deluje v C, in nekaterih normativih in pravilih, ki jih je treba upoštevati, saj je lahko nekoliko zmedeno, če jih uporabimo za obseg spremenljivke in kdaj uporabiti za obseg funkcionalnega bloka.

Sintaksa

1. Sintaksa statične ključne besede v C pri definiranju spremenljivke:

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

2. Sintaksa statične ključne besede v C pri definiranju funkcije:

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

Kako statična ključna beseda deluje v C?

V bistvu obstajata dva načina delovanja statične ključne besede v smislu C.

  • Statična ključna beseda znotraj funkcije.
  • Statična ključna beseda zunaj funkcije.

1. Statična ključna beseda znotraj funkcije

Izjava spremenljivke znotraj funkcije je povezana s časom sestavljanja in trajanjem shranjevanja spremenljivke znotraj klica funkcije. S preprostimi besedami, spremenljivke, opredeljene kot statične, razširijo področje uporabe za več funkcijskih klicev in ko jih enkrat razglasi, ne more izgubiti področja uporabe do konca zaključka programa. Svoj obseg začne določiti v času prevajanja.

Primer

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

Izhod:

2. Statična ključna beseda zunaj funkcije

Ko je statična ključna beseda objavljena zunaj funkcije, omeji njen obseg spremenljivke in postane vidna samo trenutni datoteki, kar pomeni, da bo funkcija omejila na svojo izvorno datoteko. Če dostopate do statične spremenljivke ali funkcije, je omejitev drugačna izvorna datoteka.

Čeprav se šteje, da je dobro razglasiti funkcijo za statično, kar pomaga pri zavajanju podatkov na določen obseg. Ljudje iz OOP ozadja ali java ozadja lahko preprosto povežejo z zasebnimi in javnimi ključnimi besedami.

Primer

Za definiranje spremenljivk v zunanji funkciji, torej na globalni ravni, moramo definirati vsaj statično ključno besedo.

Določite eno statično spremenljivko v eni izvorni datoteki in isto spremenljivko v drugi spremenljivki v drugi izvorni datoteki.

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

Izhod:

Določitev minimalne velikosti parametra matrike

Obstaja ena zelo nujna uporaba, ki jo včasih zanemarimo, poglejmo jo.

Prevajalniku lahko povemo tudi shranjevalni parameter za najmanjšo deklaracijo elementov znotraj array kazalca tudi na funkcijo. Toda temu primeru sledimo zelo redko (sledi do prevajalnika C99).

Primer

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 bistvu bo to sporočilo, da argument ne bo ničen.

Pravila in predpisi za statično ključno besedo na C

1. V smislu statične spremenljivke

  • Statična spremenljivka vedno ostane živa, ko je program v stanju, za razliko od samodejnih in rezerviranih ključnih besed.
  • Shranjevanje in dodelitev pomnilnika se pojavita v podatkovnem segmentu, ne v segmentu zlaganja.
  • Če spremenljivka privzeto ni deklarirana s katero koli vrednostjo, jo bo prevajalnik izrecno določil kot 0.
  • Izjava statičnih spremenljivk se večinoma izvaja z uporabo konstantnih črk.
  • V glavnem velja, da ne bi smeli definirati statične spremenljivke znotraj funkcije, ampak večinoma celoten funkcionalni modul postane nekoliko zapleten.

2. Z vidika statične funkcije

  • Izjava spremenljivke je v osnovi privzeto obravnavana kot globalna, zato jo z uporabo statične ključne besede s funkcijo omeji na področje uporabe z omejevanjem obsega v isti izvorni datoteki.
  • Dobra lastnost, da postane funkcija statična, je ponovna uporaba, tj. Lahko isto funkcijo pokličemo večkrat, kadar je to potrebno za izvajanje.

Prednosti

  • Če je spremenljivka statična, je koristno v smislu, da pomaga pri optimizaciji celotnega toka kode.
  • Ponovna uporabnost in ponovna opredelitev pomagajo prevajalcu, da notranje pokliče katero koli spremenljivko, ne da bi pri tem prevladala nobena druga ključna beseda, kot je extern.
  • Še ena prednost je povečanje berljivosti na način, da bo prihodnost potrdila, da je datoteka razglašena za statično in da ni dostopna nobena druga datoteka ali izvorna datoteka.
  • Prav tako veliko preprečuje, da bi datoteko c razglasil, tj. Na novo razglasil kot neko drugo zunanjo spremenljivko.

Zaključek

  • Izraz "statik" ima svoj trend, ali ga je treba obravnavati kot smiselnega ali brez smisla. Različni programski jezik ima različne pomene, povezane samo s statično ključno besedo. Objektno usmerjen jezik se z lastnostjo enkapsulacije obnaša zelo lepo.
  • Glede C, C # in C ++ Ima drugačno naravo. Nekateri menijo, da je uporaba statike najboljša zaradi njenih prednosti, kot so optimizacija, ponovna uporaba, omejitev obsega. Večinoma gre za potrditev končne berljive datoteke.
  • Kasneje lahko nekateri uporabniki, ki vključujejo naivne uporabnike, zlahka spoznajo, če se dve izvorni datoteki ne ujemata, če določite notranjo vsebino statičnih funkcij in statično spremenljivko, kot se bo zgodilo zaradi napake pri sestavljanju.
  • Toda glede na C to ne velja za varen in varen način, ker notranja komunikacija med nitmi postane nevarna in težka, saj na koncu postane globalna spremenljivka. Zato včasih v smislu C velja za ne tako konvencionalen način uporabe statične ključne besede v C.

Priporočeni članki

To je vodnik za statično ključno besedo v C. Tukaj razpravljamo, kako deluje statična ključna beseda v C s pravili in predpisi. Če želite izvedeti več, si oglejte tudi naslednji članek -

  1. Spremenljivke v C
  2. Zamenjava v C
  3. Matematične funkcije v C
  4. Povratna številka v C
  5. Zamenjava v PHP
  6. PHP Ključne besede
  7. Prvih 5 atributov dogodkov HTML s primeri