DEĞİŞKENLER VE VERİ TİPLERİ
Merhaba arkadaşlar ben bu gün sizler C'de değişkenleri ve veri tiplerini anlatacağım.Ben size akılınızda tutmanız için 5 soru sordum sayalım, ve sonra aynı zamanda da 2 basamaklı bir sayı ezberlemek istiyoruz. Sadece hafızanızda iki farklı değer sakladınız.Şimdi ilk değere 1 eklemenizi sorarsak.Hafıza sayıları 6 (bu 5 +1) ve 2 tespit edilmelidir. Şimdi sonuç olarak 4 örnek-çıkarma ve elde değerler olabilir .
Sadece zihinsel bellek ile yapmış olduğumuz tüm süreç bir bilgisayar iki değişkenli neler yapabileceğini bir benzetme olduğunu. Aynı süreçte C'de aşağıdaki komut seti ile ifade edilebilir:
|
|
Açıkçası, burda sadece iki küçük tamsayı değerler kullandık çünkü çok basit bir örnek, ancak bilgisayarınızın aynı zamanda bu gibi numaraları milyonlarca saklama ve onlarla gelişmiş matematiksel işlemleri gerçekleştirebilirsiniz.
Bu nedenle, belirlenen değeri saklamak için belleğin bir bölümünü değişken olarak tanımlayabiliriz.
Her değişken diğerlerinden ayıran bir tanımlayıcıya ihtiyacı vardır. Örneğin, önceki kodun değişken tanımlayıcıları vardı
a , b ve result , ama onlar geçerli tanımlayıcı olduğu sürece, değişkenler herhangi bir isim adı olabilir. Tanımlayıcıları
Geçerli bir tanımlayıcı bir veya daha fazla harf, rakam veya karakter (alt çizgi bir dizisidir_ ). Alanlarda noktalama işaretleri ve semboller tanımlayıcı bir parçası olamaz. Sadece harfler, rakamlar ve tek karakter geçerlidir. Buna ek olarak, değişken tanımlayıcıları her zaman bir harfle başlamak zorunda. Ayrıca alt çizgi karakteriyle (başlayabilir _ ), ancak bazı durumlarda bu yerde iki çizgi izleyen karakterler içeren derleyici belirli anahtar kelimeler veya harici tanımlayıcı, hem de tanımlayıcıları için ayrılmış olabilir. Hiçbir durumda bir rakam ile başlayamazsınız.Kendi kimliklerini üretirken göz önünde bulundurmanız gerekir bir diğer kural da herhangi bir anahtar kelime eşleşmiyor olabilir C dili ne de ayrılmış anahtar kelimeler derleyici özel olanlar,. Standart ayrılmış anahtar kelimeler:
asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, export, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while Bazı durumlarda amaçlı sözcükler olduğundan Ayrıca, bazı operatörler için alternatif temsiller tanımlayıcı olarak kullanılamaz:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq Sizin derleyici bazı ek özel ayrılmış anahtar sözcükleri içerebilir.
Çok önemli: C dili "harf duyarlı" bir dildir. Bu büyük harflerle yazılmış bir tanımlayıcı aynı ada sahip başka bir eşdeğer değil, küçük harflerle yazılmış demektir. Bu durumda, örneğin,
RESULT değişkeniyle result değişkeni aynı değildir veya Result değişkeni. Bu üç farklı değişken tanımlayıcılardır. Temel veri türleri
Programlarken, bizim bilgisayar belleğimizde değişkenleri saklamak, ancak bilgisayar bu tür basit bir numara saklamak için bellek aynı miktarda alan işgal etmiyor, onları saklamak istediğiniz verileri ne saklamak için daha bilmek zorunda tek bir harf veya çok sayıda, ve aynı şekilde yorumlanmalıdır gidiş değildir.Bilgisayarlarda bellek tipi bayt olarak düzenlenmiştir. Bir baytı yönetebilirsiniz bellek minimum tutar. Tek bir karakter ya da küçük bir tamsayı (genellikle 0 ile 255 arasında bir tamsayı): Bir bayt veri nispeten az miktarda saklayabilirsiniz. Buna ek olarak, bilgisayar gibi uzun numaraları veya tamsayı olmayan sayıları gibi çeşitli bayt, gruplama gelen daha karmaşık veri türlerini işleyebilirsiniz.
Eğer temel temel veri türlerinin bir özeti var Sonraki, hem de her biri ile temsil edilebilir değerlerin aralığı:
| Ad | Tanımlama | Boyut * | Aralığı * |
|---|---|---|---|
char | Karakter veya küçük tamsayı. | 1byte | imzalı: -128 127 unsigned: 0 ile 255 |
short int (short ) | Kısa tamsayı. | 2bayt | imzalı: -32.768-32.767 unsigned: 0 ila 65535 |
int | Tamsayı. | 4bayt | imzalı: -2147483648 ile 2147483647 unsigned: 0 4294967295 |
long int ( long) | Uzun tamsayı. | 4bayt | imzalı: -2147483648 ile 2147483647 unsigned: 0 4294967295 |
bool | Boolean değeri. Doğru veya yanlış: Bu iki değerden birini alabilir. | 1byte | true ya da false |
float | Kayan nokta sayısı. | 4bayt | + / - 3.4e + / - 38 (~ 7 basamak) |
double | Çift duyarlıklı kayan nokta sayısı. | 8bytes | + / - 1.7e + / - 308 (~ 15 basamak) |
long double | Uzun çift hassasiyetli kayar nokta sayısı. | 8bytes | + / - 1.7e + / - 308 (~ 15 basamak) |
wchar_t | Geniş karakter. | 2 veya 4 byte | 1 geniş karakter |
Sütunları Boyutu ve Range * değerleri program için derlenmiş sisteme bağlıdır. Yukarıda gösterilen değerler en 32-bit sistemlerde bulunan olanlardır. Ama diğer sistemler için, genel özellikleri olduğunu
int sistem mimarisi (bir"kelime") ve dört tamsayı türleri tarafından önerilen doğal boyutu char , short , int ve long her biri bir önceki en az kadar büyük olmalıdır bu, ile char her zaman tek bir bayt boyutunda olan. Aynı kayan nokta türleri için de geçerlidir. float double ve long double her biri en az önceki bir kadar hassas olarak sağlamalıdır. Değişkenleri Beyanı
C'de bir değişken kullanmak için , önce o kadar olmasını istediğiniz veri türünün belirtilmesi gerekmektedir. Yeni bir değişken bildirmek için sözdizimi geçerli bir değişken tanımlayıcı takip istenen veri türü (int, bool, float ... gibi) belirteci yazmaktır. Örneğin:
|
|
Bu değişkenler iki geçerli bildirimleri bulunmaktadır. İlki bir tanımlayıcı ile int türünde bir değişken bildirir. İkincisi ise tanımlayıcı MyNumber tip şamandıra bir değişken bildirir. Bir kez ve MyNumber programda kapsamı geri kalanı içinde kullanılabilir değişkenler, ilan etti.
Eğer aynı türden birden fazla değişken bildirmek için gidiyoruz, sen virgül ile tanımlayıcıları ayırarak tek bir tablo halinde hepsini bildirebilirsiniz. Örneğin:
|
|
Bu üç değişken (a, b ve c), tip int hepsi ilan eder, ve tam olarak aynı anlama sahiptir:
|
|
Tamsayı veri türleri, karakter kısa, uzun ve int ya imzalı ya da imzasız temsil edilmesi için gerekli numaraları aralığını bağlı olabilir. Imzasız türleri sadece pozitif değerler (ve sıfır) temsil edebilir ise imzalanan türleri, olumlu ve olumsuz değerler temsil edebilir. Bu tür adından önce imzalanan belirteci veya belirleyici imzasız kullanarak belirtilebilir.Örneğin:
|
|
Eğer belirtmezseniz, varsayılan olarak, ya imzalı ya da imzasız en derleyici ayarları bunun yerinde yazılı olabilir Yukarıdaki ikinci beyanı bu nedenle, imzalanacak tipi üstlenecek:
|
|
tam olarak aynı anlama gelir. (anahtar kelime olan ve olmayan
signed ) Bu genel kuralın bir istisnası tek başına var ve karakter saklamak için düşünülen imzalı karakter ve imzasız karakter farklı bir temel veri türü kabul edilebilir, karakter türüdür. Ya kullanmalısınız
signed ya da unsigned bir karakter ölçekli değişken sayısal değerleri saklamak için. short ve long tip belirteçleri olarak tek başına kullanılabilir. Bu durumda, kendi tamsayı temel tipleri ile ilgilidir: short eşdeğerdir short int ve long eşdeğerdir long int . Aşağıdaki iki değişken bildirimleri eşdeğerdir:
|
|
Son olarak,
signed ve unsigned da aynı, yani bağımsız tip belirteçleri olarak kullanılabilir signed int ve unsigned int sırasıyla. Aşağıdaki iki bildirimleri eşdeğerdir:
|
|
Değişken bildirimleri bir program dahilinde nasıl göründüğünü görmek için, bu bölümün başında önerilen zihinsel bellek hakkında örnek C kodu göreceğiz:
|
| 4
|
Değişken bildirimlerinde daha başka bir şey kendilerini size biraz garip görünüyor endişelenmeyin. İlerleyen bölümlerde ayrıntılı olarak göreceksiniz.
Değişkenler Kapsamı
Biz ana fonksiyonun gövdesi başında bir önceki kodda olduğu gibi ilan zaman biz bir programda kullanmayı düşündüğünüz tüm değişkenlerin, kod eski bir noktaya kendi tür belirteci ile ilan edilmiştir gereken bir, b ve sonuç int türünde idi.Bir değişken Global ya da lokal kapsam da olabilir. Bir yerel değişken bir işlev ya da bir blok bünyesinde bildirilen ise Genel bir değişken, tüm işlevler dış kaynak kodunun ana gövde, bildirilen bir değişkendir.

Onun ilanından sonra olduğu zaman global değişkenler, hatta işlevleri içinde, herhangi bir kod sevk edilebilir.
Yerel değişkenlerin kapsamı parantez içine blok (sınırlıdır
{} , beyan). Bir fonksiyonun gövdesi (fonksiyon gibi ana)başında ilan edilir. Örneğin kendi alanlarında kendi beyanı noktası ve bu işlevi sonu arasındadır. Yukarıdaki örnekte, bu başka bir işlev ana ek olarak var, diğer fonksiyon ve tersi erişilemedi, yerel değişkenler ana beyan anlamına gelir. Değişkenleri Başlatma
Düzenli bir yerel değişken bildirirken, değeri belirsiz varsayılan olarak. Ama bir değişken bildirilmiş aynı anda somut bir değeri saklamak isteyebilirsiniz. Bunu yapmak için, değişken başlatabilirsiniz. Bunu yapmak için iki yol vardır:C-benzeri başlatma olarak bilinen ilk, değişken başlatılır için değer ardından bir eşittir işareti ekleyerek yapılır:
type identifier = initial_value ; Örneğin, bir int değişkeni bildirmek istiyorsanız bu ilan edildiği anda 0 değeri ile başlatılır, biz yazabilirsiniz seslendi:
|
|
Değişkenleri başlatmak için başka bir yol, yapıcı başlatma olarak bilinen, parantez arasında (başlangıç değeri içine alarak yapılır
() ): type identifier (initial_value) ; Örneğin:
|
|
Değişkenlerin başlatılıyor her iki yönde geçerli ve C eşdeğerdir + +.
|
| 6
|
Dizeleri giriş
Tek bir karakter daha uzun olmayan sayısal değerler saklayabilirsiniz.Bunlar değişkenler dizeleri olarak bilinir.C dili kütüphanesi standart ile dizeleri için destek sağlar
string sınıf. Bu temel bir türü değil, ama temel türleri En temel kullanım olduğu gibi benzer bir şekilde hareket eder. : Temel veri tipleri ile birlikte birinci farkı nesneleri (değişken) bu tür ilan ve kullanmak için bizim kaynak kodu ek bir başlık dosyasını dahil etmek ihtiyaçı vardır
<string> ve erişebilir std zaten vardı ad ( tüm önceki programlar sayesinde using namespace tablosu).
|
| Bu bir dizedir
|
Bir önceki örnekte gördüğünüz gibi, dizeleri sadece sayısal tipi değişkenler gibi literal geçerli herhangi bir dize herhangi bir geçerli sayısal hazır bilgi için başlatılabilir ile başlatılabilir. Her iki başlatma biçimleri dizeleri ile geçerlidir:
|
|
Dizeleri de tüm diğer temel işlemleri gerçekleştirebilirsiniz temel veri türleri olabilir.Bu bir başlangıç değeri olmadan ilan edilen ve yürütülmesi sırasında değerleri atanan olmak gibi:
|
| Bu ilk dize içeriği
Bu farklı bir dize içeriği
|
0 yorum:
Yorum Gönder