İçindekiler:
Video: C Programlama Dersleri | Değişkenler, Veri Tipleri, Yer Tutucular 2024
B programlamada bazen cep telefonu servisi gibi bir değişken olmalıdır: her yerde kullanılabilir. Değişken, herhangi bir zamanda herhangi bir zamanda kullanılabilir. Bu tür bir değişkene evrensel değişkeni denilebilir. Dünya çapında değişkeni olarak adlandırılabilir. Ancak C'de, global değişkeni olarak adlandırılır.
Global değişkenler nasıl kullanılır
Global değişkenler, değişken bildirimi evrensel hale getirerek belirli sorunları çözer. Bu şekilde, programdaki herhangi bir işlev değişkene erişebilir. Bir işleve aktarılacak veya iade edilmek zorunda değildir.
Çevrenizdeki Yaşı Atmak, genel değişkenin nasıl ilan edildiğini ve kullanıldığını gösterir. Yaş ve float genel değişkenleri her iki işlevden de etkilenir. Bu işlevlere geçirilebilir, ancak her iki değer de döndürülemez. (C işlevleri yalnızca bir değeri döndürür.) Dolayısıyla, genel değişken bir çözüm olarak kullanılır.
Çevresinde Yaşamak İçin
#include void half (void); iki kez geçersiz (void); yaş; yüzen ayak; int main () {printf ("Kaç yaşındasın:"); scanf ("% d", & yaş); printf ("Siz ne kadar uzunsunuz (feet cinsinden):"); scanf ("% f", & feet); printf ("Siz% d yaşındasınız ve%.1f feet boyunda, n", yaş, feet); yarım(); iki defa(); printf ("Fakat gerçekten yüzde d yaşında değilsiniz ya da yüzde 1.f feet boyunda değilsiniz", yaş, ayak); return (0);} boşluk yarısı (void) {float a, h; a = (float) yaş / 2. 0; printf ("Yarım yaşınız%. 1f n", a); h = fit / 2. 0; printf ("Yüksekliğinizin yarısı%. 1f n", h);} iki kez void (boş) {age * = 2; printf ("Yaşının iki katı% d. n", yaş); ayak * = 2; printf (İki katı yükseklik%. 1fn ", feet);}
Satır 6, genel int değişkeni yaş ve float değişkeni feet olarak bildirir. Bunlar genel değişkenlerdir, çünkü #include, #define ve prototip oluşturma arazisinde herhangi bir işlevin dışında bildirilmiştir. Değişkenler daha sonra her fonksiyonda kullanılır. Değerlerine kod boyunca erişilebilir. Bu değerler twice () işlevi tarafından değiştirildiğinde bile, main () işlevi yeni değerleri kullanır.
main () fonksiyonundaki iki printf () ifadesinin metnini Çevrenizdeki Verilerin Yaşayın bölümünde sarmaladığına dikkat edin. Bu ifadeleri bir metin düzenleyicisinde kaydırmanız gerekmez; hepsini tek bir satırda yazın.
Egzersiz 1 : Çevrenizdeki Yaşayın adlı kaynak kodunu editörünüze yazın ve yeni bir program oluşturun. Kurun ve çalıştırın.
Küresel değişkenleri kullanmak konusunda tembel olmayın! Bir işleve bir değer iletebilirseniz bunu yapın! Bu doğru. Çok fazla sayıda yoksul programcı, tüm değişkenlerini "problemi çözmek" için genel olarak bildirir."Bu özensiz ve uygun değil.
Global değişkenlerin iyi örnekleri arasında, programdaki tüm işlevlerin, kullanıcı bilgileri veya çevrimiçi olup olmadığı veya metnin görüntülenip görüntülenmediği gibi bilmeleri gereken bilgiler bulunur. Bu durumda, bu değişkenlerin yerine global olmasını düşünün.
Küresel bir yapı değişkeni oluşturma hakkında
Küresel değişken kullanmanın daha iyi bir örneği ve genel değişkenlerin tamamen gerekli olduğu bir durum, bir yapıya bir işleve geçilirken verilir. Bu durumda, tüm işlevlerin yapı türünün değişkenlerine erişebilmesi için yapıyı genel olarak bildirmelisiniz.
Bir Yapıyı Bir İşleve Geçme'nin muazzam uzunluğunun sizi korkutmasına izin vermeyin! Sonunda yazacağınız "gerçek" programların çoğu çok daha uzun olacak!
Bir Yapıya Geçiş Yapan
#include #include #include #define SIZE 5 struct bot {int xpos; int ypos;}; struct bot başlatma (struct bot b); int main () {bot robotlar [BOYUT]; int x; srandom ((işaretsiz), zaman (NULL)); for (x = 0; xBir yapıyı bir işleve geçirmek için yapı 7 ve 10 satırları arasında gerçekleşen genel olarak bildirilmelidir. Bu, işlevi prototipleştirmeden önce gerçekleşmelidir; bu da Satır 12'de gerçekleşir.
initialize () işlevi, 30'dan 41'e kadar olan Satırlardan çalışır. Yapı, işleve geçirilir ve döndürülür. Yapı değişkeninin bağımsız değişken olarak tam olarak tanımlanması gerektiğine dikkat edin. 30. Satır'da, işleve değişken adı verilir b
Line 40'daki return deyimi yapıyı geri çağıran işleve aktarır Gerçekten de, initialize () işlevi bir yapı botu türü işlev olarak tanımlanır. değerini döndürür.
Alıştırma 2 : Cebreninizi yapışkan yere takın ve bir yapıdan bir İşlev'e Geçiş Yaparak editörünüze tüm bu kaynak kod satırlarını yazın. Build and run.
Çıktı, yapı dizisinin bir işleve nasıl aktarıldığını (bir seferde bir öğe) gösterir ve daha sonra geri döndü.