C Programlama

C Programlamada Statik

C Programlamada Statik
Bu öğreticide, static anahtar sözcüğünü değişkenler ve işlevler içinde uygulayarak açıklayacağız. Statik, C programlamada kullanılan bir anahtar kelimedir ve aşağıdaki sözdizimi kullanılarak uygulanabilir:

statik veri türü değişken adı

Statik yerel değişkenler

Bir fonksiyondaki bir değişken statik olduğunda, değişken, fonksiyon çağrıları arasında değerini korur.

//Örnek 1.c
#Dahil etmek
int eğlence1()

int sayı=0;
say++;
dönüş sayısı;

int eğlence2()

statik int sayı = 0;
say++;
dönüş sayısı;

int ana()

printf("fun1 1. çağrı döner : %d\n",fun1());
printf("fun1 2. çağrı döner : %d\n\n",fun1());
printf("fun2 1. çağrı döner : %d\n",fun2());
printf("fun2 2. çağrı döner : %d\n",fun2());
0 döndür;


Örnek 1'de.c, iki işlevimiz var: eğlence1() ve eğlence2(). İçinde eğlence1(), bir değişken (sayım) bildiririz ve onu 0 olarak başlatırız. Ardından sayım değişkenini artırıyoruz ve elde edilen değeri döndürüyoruz. kullanma ana(), Biz ararız eğlence1() çağrıldığında sayı değişkeni temizlendiğinden, her seferinde 1 değeri döndürülür eğlence1() tamamlandı. İçinde eğlence2() sayma değişkenini statik bir değişken olarak ilan ettik. Bu nedenle değeri korunur. kullanma ana(), Biz ararız eğlence2() iki kez: ilk kez 1 değeri döndürülür ve ikinci kez 2 değeri döndürülür.

Statik global değişkenler

Statik bir global değişken, diğer global değişkenlerle aynı şekilde davranır, ancak başka bir C programından erişilemez.

Statik fonksiyonlar

C'de fonksiyonlar varsayılan olarak globaldir. Ancak, statik bir işlev bildirirsek, işlev yereldir ve başka bir C programından erişilemez.

Statik değişkenlerin başlatılması

Statik bir değişken açıkça başlatılmazsa, 0 olarak başlatılır.

//Örnek2.c
#Dahil etmek
int ana()

statik int i;
printf("i'nin değeri : %d\n",i);
0 döndür;


Örnek2'de.c, başlatılmamış statik bir değişken i bildirdik. Ancak değişken statik olduğundan, otomatik olarak 0 olarak başlatılır.

Statik bir değişkenin sabit bir hazır bilgi ile başlatılması gerektiğine dikkat etmek önemlidir; statik bir değişkeni başlatmak için bir işlevin dönüş değerini kullanamayız.

//Örnek3.c
#Dahil etmek
int eğlence1()

dönüş 5;

int ana()

statik int i = eğlence1();
printf("i'nin Değeri : %d\n",i);
0 döndür;


Örnek3'te.c, dönüş değerini kullanarak statik bir değişken başlatmaya çalışıyoruz eğlence1(). Ancak gördüğünüz gibi kod derlendiğinde bir hata döndürülüyor.

Özet

Statik bir değişkenin ömrü ile programın ömrü eşittir.

Statik bir değişken başlatılmazsa, varsayılan olarak 0 değerini alacaktır.

Ne global bir statik değişkene ne de bir statik fonksiyona, tanımlandığı programdan başka bir programdan erişilebilir.

Vulkan for Linux Users
With each new generation of graphics cards, we see game developers push the limits of graphical fidelity and come one step closer to photorealism. But...
OpenTTD vs Simutrans
Creating your own transport simulation can be fun, relaxing and extremely enticing. That's why you need to make sure that you try out as many games as...
OpenTTD Tutorial
OpenTTD is one of the most popular business simulation games out there. In this game, you need to create a wonderful transportation business. However,...