C Değişkeni, Veri Tipleri, Sabitler
⚡ Akıllı Özet
Değişkenler, veri tipleri ve sabitler her C programının temelini oluşturur; değişkenler değiştirilebilir değerleri saklar, veri tipleri bu verilerin boyutunu ve aralığını tanımlar ve sabitler asla değişmeyen sabit değerler tutar.

Değişken Nedir?
Değişken, bazı değerleri depolamak için kullanılan bir tanımlayıcıdır. Sabitler yürütme sırasında asla değişemez. Değişkenler bir programın yürütülmesi sırasında değişebilir ve içinde saklanan değeri güncelleyebilir.
Tek bir değişken bir programda birden fazla yerde kullanılabilir. Değişken adı anlamlı olmalıdır. Değişkenin amacını temsil etmelidir.
Example: Height, age, are the meaningful variables that represent the purpose it is being used for. Height variable can be used to store a height value. Age variable can be used to store the age of a person
Bir değişkenin programın herhangi bir yerinde kullanılmadan önce bildirilmesi gerekir. Karakterler, rakamlar ve alt çizgi kullanılarak bir değişken adı oluşturulur.
Değişken oluştururken uyulması gereken kurallar şunlardır:
- Değişken adı yalnızca karakterlerden, rakamlardan ve alt çizgiden oluşmalıdır.
- Değişken adı sayıyla başlamamalıdır.
- Değişken adı boşluklardan oluşmamalıdır.
- Değişken adı bir anahtar kelimeden oluşmamalıdır.
- 'C', büyük/küçük harfe duyarlı bir dildir; bu, 'age' ve 'AGE' adlı değişkenlerin farklı olduğu anlamına gelir.
Aşağıda bir 'C' programında geçerli değişken adlarına örnekler verilmiştir:
height or HEIGHT
_height
_height1
My_name
Aşağıda 'C' programında geçersiz değişken adlarına dair örnekler verilmiştir:
1height Hei$ght My name
Örneğin, my_variable adında bir tamsayı değişkeni tanımlıyoruz ve ona 48 değerini atıyoruz:
int my_variable;
my_variable = 48;
Bu arada, tek bir ifadede bir değişkeni hem bildirebilir hem de başlatabiliriz (bir başlangıç değeri atayabiliriz):
int my_variable = 48;
Veri tipleri
'C', bir programcının bir uygulamanın gereksinimlerine göre uygun bir veri türü seçmesini kolaylaştırmak için çeşitli veri türleri sağlar. Aşağıda üç veri türü verilmiştir:
- İlkel veri türleri
- Türetilmiş veri türleri
- Kullanıcı tanımlı veri türleri
Beş temel temel veri türü vardır;
- tam sayı verileri için int
- karakter verileri için char
- kayan nokta sayıları için kayan nokta
- çift hassasiyetli kayan nokta sayıları için çift
- geçersiz
Diziler, fonksiyonlar, işaretçiler ve yapılar türetilmiş veri tipleridir. 'C' dili, yukarıda bahsedilen temel veri tiplerinin daha genişletilmiş sürümlerini sunar. Her veri tipi, boyut ve aralık bakımından birbirinden farklıdır. Aşağıdaki tabloda her veri tipinin boyutu ve aralığı gösterilmektedir.
| Veri tipi | Bayt cinsinden boyut | Aralık |
| Karakter veya imzalı karakter | 1 | 128 kadar 127 |
| İmzasız karakter | 1 | 0 için 255 |
| int veya imzalı int | 2 | 32768 kadar 32767 |
| İmzasız int | 2 | 0 için 65535 |
| Kısa int veya İmzasız kısa int | 2 | 0 için 255 |
| İmzalı kısa int | 2 | 128 kadar 127 |
| Uzun int veya İmzalı uzun int | 4 | 2147483648 kadar 2147483647 |
| İmzasız uzun int | 4 | 0 için 4294967295 |
| şamandıra | 4 | 3.4E-38 ila 3.4E+38 |
| çift | 8 | 1.7E-308 ila 1.7E+308 |
| Uzun çift | 10 | 3.4E-4932 ila 1.1E+4932 |
Not: C dilinde Boolean veri türü bulunmamaktadır.
Tamsayı veri türü
Tamsayı bir tam sayıdan başka bir şey değildir. Tamsayı veri türünün aralığı makineden makineye değişir. Tamsayı veri türü için standart aralık -32768 ile 32767 arasındadır.
Bir tamsayı tipik olarak 2 bayttır; bu, bellekte toplam 16 bit tükettiği anlamına gelir. Tek bir tamsayı değeri 2 byte bellek kaplar. Bir tamsayı veri türü ayrıca kısa int, int ve uzun int gibi diğer veri türlerine bölünür.
Her veri türü, tamsayı veri türü ailesine ait olmasına rağmen aralık bakımından farklılık gösterir. Tamsayı ailesinin her veri türü için boyut değişmeyebilir.
Kısa int çoğunlukla küçük sayıları depolamak için kullanılır, int ortalama boyutlu tam sayı değerlerini depolamak için kullanılır ve uzun int büyük tam sayı değerlerini depolamak için kullanılır.
Tamsayı veri türünü kullanmak istediğimizde, tanımlayıcının önüne int eklememiz gerekir, örneğin:
int age;
Burada yaş, tamsayı değerlerini depolamak için kullanılabilen bir tamsayı veri tipinin değişkenidir.
Kayan nokta veri türü
Tam sayılar gibi 'C' programında da kayan noktalı veri türlerinden yararlanabiliriz. 'Float' anahtar sözcüğü, kayan nokta veri türünü temsil etmek için kullanılır. Kayan nokta değerini tutabilir; bu, bir sayının kesir ve ondalık kısım içerdiği anlamına gelir. Kayan nokta değeri, ondalık nokta içeren gerçek bir sayıdır. Tamsayı veri türü ondalık kısmı saklamaz, dolayısıyla bir değerin ondalık kısmını saklamak için kayan noktaları kullanabiliriz.
Genellikle, bir float 6'ya kadar hassasiyet değeri tutabilir. Float yeterli değilse, büyük kayan nokta değerlerini tutabilen diğer veri türlerini kullanabiliriz. double ve long double veri türleri, sırasıyla 14 ve 80 bite kadar hassasiyetle gerçek sayıları depolamak için kullanılır.
Kayan noktalı bir sayı kullanırken bir tanımlayıcıdan önce float/double/long double anahtar sözcüğü yerleştirilmelidir. Geçerli örnekler şunlardır:
float division; double BankBalance;
Karakter veri türü
Karakter veri türleri, tek tırnak içine alınmış tek bir karakter değerini depolamak için kullanılır.
Karakter veri türü en fazla 1 bayt bellek alanı kaplar.
Örnek,
Char letter;
Veri türünü geçersiz kıl
Geçersiz veri türü herhangi bir değer içermez veya döndürmez. Çoğunlukla 'C'deki fonksiyonları tanımlamak için kullanılır.
Örnek,
void displayData()
Bir değişkenin tür bildirimi
int main() { int x, y; float salary = 13.48; char letter = 'K'; x = 25; y = 34; int z = x+y; printf("%d \n", z); printf("%f \n", salary); printf("%c \n", letter); return 0;}
Çıktı:
59 13.480000 K
Aynı veri türüne sahip birden fazla değişkeni virgülle ayırarak tek bir satırda tanımlayabiliriz. Ayrıca, printf çıktı fonksiyonunda float (%f), char (%c) ve int (%d) biçim belirleyicilerinin kullanımına dikkat edin.
Sabitler
Sabitler, bir programın yürütülmesi sırasında asla değişmeyen sabit değerlerdir. Aşağıda çeşitli sabit türleri verilmiştir:
Tamsayı sabitleri
Tamsayı sabiti, rakamlardan veya rakamlardan oluşan bir değerden başka bir şey değildir. Bu değerler bir programın yürütülmesi sırasında asla değişmez. Tamsayı sabitleri sekizlik, onluk ve onaltılık olabilir.
Ondalık sabit 0-9 arası rakamları içerir, örneğin:
Example, 111, 1234
Yukarıda geçerli ondalık sabitler verilmiştir.
Sekizli sabit 0-7 arası rakamları içerir ve bu tür sabitlerin önünde her zaman 0 bulunur.
Example, 012, 065
Yukarıda geçerli Sekizli sabitler verilmiştir.
Onaltılık sabit, AF'den gelen karakterlerin yanı sıra 0-9 arası bir rakam içerir. Onaltılık sabitlerin önünde her zaman 0X bulunur.
Example, 0X2, 0Xbcd
Yukarıda geçerli onaltılık sabitler verilmiştir.
'C' ile programlamada sekizlik ve onaltılık tam sayı sabitleri çok nadiren kullanılır.
Karakter sabitleri
Bir karakter sabiti, tek bir tırnak işareti (') içine alınmış yalnızca tek bir karakter içerir. Karakter sabitini, ASCII değerini vererek de temsil edebiliriz.
Example, 'A', '9'
Yukarıda geçerli karakter sabitlerinin örnekleri verilmiştir.
Dize sabitleri
Bir dize sabiti, çift tırnak işareti (“”) içine alınmış bir karakter dizisi içerir.
Example, "Hello", "Programming"
Bunlar geçerli dize sabitlerinin örnekleridir.
Gerçek Sabitler
Her zaman bir tamsayı değeri içeren tamsayı sabitleri gibi. 'C' aynı zamanda ondalık nokta veya kesir değeri içeren gerçek sabitler de sağlar. Gerçek sabitlere kayan nokta sabitleri de denir. Gerçek sabit bir ondalık nokta ve bir kesirli değer içerir.
Example, 202.15, 300.00
Bunlar 'içindeki geçerli gerçek sabitlerdir'C'.
Gerçek bir sabit şu şekilde de yazılabilir:
Mantissa e Exponent
Örneğin klasik daire sabiti PI gibi değişmeyen bir değeri bildirmek için bu sabiti bildirmenin iki yolu vardır.
Bir değişkenin tanımlanmasında `const` anahtar kelimesini kullanmak, depolama alanında yer ayrılmasını sağlar.
#include <stdio.h> int main() { const double PI = 3.14; printf("%f", PI); //PI++; // This will generate an error as constants cannot be changed return 0;}
Bellek kullanımını gerektirmeyen #define önişlemci yönergesini kullanarak ve bu ifadenin sonuna noktalı virgül koymadan
#include <stdio.h> #define PI 3.14 int main() { printf("%f", PI); return 0;}
