Tüm programlama dillerinde olduğu gibi C# dilinde de değişkenler tanımlanırken bazı kurallara uyulması gerekmektedir. Bunun yanı sıra değişkenlerin faaliyet alanının (değişkene erişilebilecek bölgelerin) iyi bilinmesi de önemlidir.
Değişken Tanımlarken ve İsimlendirilirken Dikkat Edilecek Hususlar
1-C# dili büyük-küçük harf duyarlı bir olduğu için, değişken isimleri buna göre verilmelidir. Aşağıdaki değişkenlerin üçü de farklı değişken olarak algılanır.
int sayi; int Sayi; int SAYI;
2-Değişken isimleri rakam ile başlayamaz, ancak diğer karakterler rakam olabilir.
int 1sayi; // yanlış
int sayi1; //doğru
3-Değişken ismi birden fazla kelimeden oluşuyorsa araya boşluk konulmaz. İhtiyaç halinde _ ile kelimeler birleştirilebilir.
int sinav notu; //yanlış
int sinavnotu; //doğru
int sinav_notu; //doğru
4-C# dilinde kullanılan özel komutlar veya anahtar kelimeler değişken ismi olarak kullanılmaz.
Örneğin değişken isimleri, if,switch, for, do, continue, default, case, catch, try, finally, true, false, public, static, private, this, using, while, protected, v.b kelimeler değişken ismi olarak kullanılamaz. Bu anahtar kelimeleri aklınızda tutmak zorunda değilsiniz, zaman içerisinde zaten birçoğunu öğreneceksiniz.
5-Değişken isimleri içerisinde özel karakterler kullanılmaz. Örneğin ?, !, >, <, =, {, %, ‘, ), #, @, +, -, /, *, &, [ gibi. Yukarıda da bahsedildiği gibi sadece _ (alt çizgi) kullanımı istisnadır.
Değişken isimlerinde Türkçe karakter kullanımı hataya neden olmasa da kullanılması tavsiye edilmez.
Değişkenlerin Faaliyet Alanı
Genel kural şudur; değişkenler tanımlandığı blok içerisinde faaliyet gösterirler. Tabi bu durumun istisnaları mevcuttur. Burada istisnalara değinip kafanızı karıştırmayacağım.
1 2 3 4 5 6 7 8 9 |
static void Main(string[] args) { double sayi1 = 15, sayi2 = 25; } void hesapla() { double ort = (sayi1 + sayi2)/2; } |
Bu örnekte hesapla metodu (bloğu) içerisinden sayi1 ve sayi2 değişkenlerine ulaşmak ve işlem yapmak mümkün değildir. Yukarıda ki gibi bir kullanım hataya sebep olur.
Aynı durum if, for, while gibi koşul ve döngü blokları içinde geçerlidir.
1 2 3 4 5 6 7 8 9 10 |
static void Main(string[] args) { int deger = 45; if (deger > 20) { int toplam = 100; } Console.WriteLine(toplam); } |
Bu örnekte toplam değişkeni if bloğu içerisinde tanımlandığı için, sadece bu blok içerisinde varlığını sürdürebilir. Yukarıdaki gibi bir kullanım hataya neden olacaktır.