Uvod u statičku ključnu riječ u C

Statička ključna riječ u C različito se razlikuje na način da je riječ o ključnoj riječi koja se može koristiti i sa varijablama, kao i sa funkcijama. Stoga je vrlo potrebno da se razgraniči obje kako bi se dobile stvarne karakteristike ili ponašanje ključne riječi posebno u pogledu jezika C. Teško je steći potpuno razumijevanje za početnike tako da ćemo se provozati kroz sintaksu, zapravo radeći kako to funkcionira u C-u, nekim normama i pravilima koja se moraju poštovati jer može biti malo zbunjujuće za shvatiti kada to iskoristiti za opseg varijable i kada koristiti za opseg funkcionalnog bloka.

Sintaksa

1. Sintaksa statičke ključne riječi u C kod definiranja varijable:

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

2. Sintaksa statičke ključne riječi u C kod definiranja funkcije:

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

Kako statična ključna riječ djeluje na C?

U osnovi postoje dva načina na koja statična ključna riječ djeluje u smislu C.

  • Statična ključna riječ unutar funkcije.
  • Statična ključna riječ izvan funkcije.

1. Statička ključna riječ unutar funkcije

Izjava varijable unutar funkcije povezana je s vremenom sastavljanja i trajanjem varijable u pozivu funkcije. Jednostavnim riječima, varijable definirane kao statičke proširuju svoje područje primjene za pozive u više funkcija i jednom proglašenom ne može izgubiti opseg sve dok se završi izvršavanje programa. Počinje definirati njegov opseg u vrijeme sastavljanja.

Primjer

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

Izlaz:

2. Statička ključna riječ izvan funkcije

Jednom kada se statična ključna riječ deklarira izvan funkcije, ona ograničava njezin opseg varijable i postaje vidljiva samo trenutnoj datoteci, što znači da će funkcija dobiti njezin opseg ograničen na samu izvornu datoteku. Pristup toj statičkoj varijabli ili funkciji ograničava se iz druge izvorne datoteke.

Iako se smatra dobrom deklarirati funkciju kao statičku koja pomaže u kapsuliranju podataka do određenog opsega. Ljudi s OOP-ova ili iz java podrijetla mogu ih lako povezati s privatnim i javnim ključnim riječima.

Primjer

Za definiranje varijabli u vanjskoj funkciji, tj. Na globalnoj razini, moramo definirati barem statičku ključnu riječ.

Definirajte jednu statičku varijablu u jednoj izvornoj datoteci i istu varijablu u drugoj varijabli u drugoj izvornoj datoteci.

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

Izlaz:

Određivanje minimalne veličine parametra polja

Postoji jedna vrlo bitna namjena koju ponekad zanemarimo, pogledajmo je.

Kompajleru možemo reći i parametar pohrane za minimalno proglašavanje elemenata unutar pokazivača polja na funkciju. Ali ovaj se slučaj slijedi vrlo rijetko (slijedi do C99 prevoditelja).

Primjer

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

U osnovi, to će značiti da argument neće biti nula.

Pravila i propisi za statičku ključnu riječ na C

1. U smislu statičke varijable

  • Statička varijabla uvijek ostaje živa kad je program u operativnom stanju za razliku od automatski i rezerviranih ključnih riječi.
  • Pohrana i raspoređivanje memorije događaju se u podatkovnom segmentu, a ne u segmentu snopa.
  • Ako varijabla nije deklarirana s bilo kojom vrijednošću prema zadanom, prevoditelj će izričito definirati kao 0.
  • Deklaracija statičkih varijabli uglavnom se vrši pomoću konstantnih literala.
  • Prvenstveno se smatra da ne bismo trebali definirati statičku varijablu unutar funkcije, većinom čini čitav funkcionalni modul malo složenim.

2. U smislu statičke funkcije

  • Deklaracija varijable u osnovi se podrazumijeva kao globalna, pa se upotrebom statičke ključne riječi s funkcijom ograničava na doseg ograničavanjem opsega u istoj izvornoj datoteci.
  • Jedna dobra karakteristika stvaranja funkcije statičnom je ponovna upotreba, tj. Istu funkciju možemo nazvati više puta kad god je to potrebno za izvršavanje.

prednosti

  • Razmatranje varijable kao statičke u prednosti je u smislu što pomaže u optimizaciji cijelog protoka koda.
  • Ponovna upotreba i redefinicija pomažu prevoditelju da interno nazove bilo koju varijablu bez prisvajanja bilo koje druge ključne riječi kao što je extern.
  • Još jedna prednost je povećavanje čitljivosti na način da će budućnost dobiti potvrdu da je datoteka deklarirana kao statična i da joj nijedna druga datoteka nije dostupna.
  • Također onemogućava mnogo deklariranja c datoteke, odnosno redeklariranje kao neke druge vanjske varijable.

Zaključak

  • Izraz "statički" ima svoj trend hoće li ga se smatrati smislenim ili bez smisla. Različiti programski jezik ima različita značenja koja se odnose samo na statičku ključnu riječ. Objektno orijentisan jezik, ponaša se sa svojstvom enkapsulacije vrlo lijepo.
  • U pogledu C, C # i C ++ Ima drugačiju prirodu. Neki smatraju da je upotreba statike najbolja zbog prednosti koje ona ima poput optimizacije, ponovne upotrebe, ograničenja opsega. Većina od njih je priznanje konačne datoteke za čitanje.
  • Kasnije se ponekad, uključujući i neke naivne korisnike, može lako saznati ako se dvije izvorne datoteke ne podudaraju tako da se uvrsti unutarnji sadržaj statičkih funkcija i statičke varijable, kao što će se desiti zbog pogreške u sastavljanju.
  • Ali u pogledu C, to se ne smatra sigurnim i sigurnim načinom jer unutarnja komunikacija između niti postaje nesigurna i teška jer na kraju postaje globalna varijabla. Stoga se ponekad u pogledu C smatra ne tako uobičajenim način upotrebe statičke ključne riječi u C.

Preporučeni članci

Ovo je vodič za statičke ključne riječi u C. Ovdje ćemo raspraviti kako statična ključna riječ djeluje na C s pravilima i odredbama. Možete pogledati i sljedeći članak da biste saznali više -

  1. Varijable u C
  2. Zamjena u C
  3. Matematičke funkcije u C
  4. Obrnuti broj u C
  5. Zamjena u PHP-u
  6. PHP Ključne riječi
  7. Top 5 atributa HTML događaja s primjerima

Kategorija: