raderde 1
raderde
Cannn6161 1
Cannn6161
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Mt2Hizmet 1
Mt2Hizmet
melankolıa18 1
melankolıa18
romegames 1
romegames
Krutzo 1
Krutzo
shrpnl 1
shrpnl
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Vb'de Degisken Tanimlama

  • Konuyu başlatan Konuyu başlatan dogukan_62
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 1
  • Görüntüleme Görüntüleme 583

dogukan_62

Level 7
TM Üye
Üye
Katılım
11 Mar 2010
Konular
194
Mesajlar
2,000
Reaksiyon Skoru
175
Altın Konu
0
TM Yaşı
16 Yıl 2 Ay 29 Gün
Başarım Puanı
132
MmoLira
0
DevLira
0
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

VB’DE DEĞİŞKEN TANIMLAMA




VB’de ise değişken yapısı daha da gelişmiştir. Değişkenler için önemli durum, değişkenlerin karışıklığa meydan vermemesi için tanımlanması mecburiyeti olmasıdır. Daha önceki iki kuşak Basic’te bu mecburiyet yoktur ve değişkenleri benzerlikten dolayı her zaman karıştırmak mümkündür. VB’de değişkenleri kullanmadan önce tanımlama mecburiyeti programcının seçimine bırakılmıştır. Programcı isterse Tools-Options menüsü Require Variable Declaration seçeneğini işaretleyerek derleyicinin tanımlanmamış değişken kullanımda hata mesajı vermesini sağlayabiliriz.

Bir değişken tanımlanırken aşağıdaki kuralları göz önünde bulundurulması gerekir.

• Değişken ismi bir harf ile başlamalıdır.
Ad1, Ad2
• Değişken isminde boşluk bulunmaz. Bunun yerine alt çizgi karakteri kullanılabilir.
• Değişken isminde sadece harfler, rakamlar ve alt çizgi karakterleri bulunabilir.
Adı_Soyadı, No1
• Değişkene verilecek isim VB komutlarından oluşmamalıdır.
Not, Dim, Val ......vs
• Değişken ismi 255 karakterden fazla olmamalıdır.

5.1. VB’de Kullanılan Standart Veri Tipleri

VB’de değişken tipleri Dim değimi ile tanımlanır. Bu değimin yazılımı;
Dim deg_adı [(Dizi boyutu)] As tipi

deg _adı : Tanımlanacak değişkenin ismidir.

Dizi boyutu : Değişken dizi olarak tanımlanacaksa dizinin boyutu değişken isminden sonra parantez içine yazılır.

Dim x (5) tanımıyla 6 elemanlı dizi tanımlamış oluruz. Dizinin ilk
elemanı 0 son elemanı 5 dir.

Dim x (3 to 6) tanımıyla ilk elamanı x (3) ve son elamanı x (6)
olan bir dizi tanımlanmıştır.

Tipi : Tanımlanacak değişkenin tipi belirlenir. Bunlar ;

Byte : 1 Baytlık tamsayı tipidir. 0 ile 255 arasında değer alabilir.

Integer : 2 Baytlık işaretli tamsayı tipidir. –32768 ile 32767 arasında değer alabilir.

Long : 4 Baytlık işaretli tamsayı tipidir. –2.147.483.648 ile 2. 147.483.647 arasında değer alabilir.

Not: Yukarıdaki değişken tiplerine ondalık sayı atanması durumunda sayı en yakın tamsayıya yuvarlatılacaktır. ( x=4,3 ise x= 4 atanır, y=3.6 ise y=4 atanır)

Single : 4 Baytlık ondalık sayı tipidir. 3.402823 x 1038 ile 1.401298 x 10-45 arasında değer alabilir.

Double : 8 Baytlık ondalık sayı tipidir. 1.79769313486232 x 10308 ile 4.94065645841247 x 10-324 arasında değer alabilir.

Currency : 8 Baytlık ondalık sayı tipidir. Ancak sayının ondalık kısmı 4 basamaktan fazla olamaz. –92337203685477.5808 ile 922337203685477.5807 arasında değer alabilir.

Decimal : 14 Baytlık bir sayı tipidir. Bu tipin en önemli özelliği sayıdaki bütün basamakların tutulmasıdır.


Boolean : 2 Baytlık bir veri tipidir. Sadece True ve False değerleri alabilir.

Dim ogrenci As Boolen
Ogrenci=True
Ogernci=1 Bu atamaların hepsi aynı işi
Ogernci=100 görür.


String : Karakter sınırı verilmezse 2 milyar karaktere kadar atama yapılabilen sayısal veri tipidir. +10 bayt yer kaplar. Karakter sayısını sınırlamak için ;

Dim a As String * sınır yazılır.

Dim a String İstenildiği kadar karakter ataması yapılabilir.
Dim b String * 3 3 tane karakter ataması yapılabilir.

Variant : VB’de değişken tanımlanırken tip ismi verilmemişse bu tip Variant olarak ele alınır ve değişkenin tipi atanacak değere göre değişir. Variant tipler yukarıdaki tiplerden herhangi biri gibi işleme girebilir ve programın çalışması esnasında değişebilir.

Date : 8 Baytlık yer kaplayan bu değişken tipi 1/1/100 ile 31/12/9999 arasındaki tarih ve 0:00:00 ile 23:59:59 arasında saat atamaları yapılabilir.

Object : 4 Baytlık bir veri tipidir. OLE işlemlerinde kullanılmak amacıyla tasarlanmıştır. Bu tipte değişkenlere atama yapılırken Set operatörü kullanılır.





5.2. Kullanıcı Tarafından Yeni Tip Tanımlanması

Type tip_adı
Deg_adı As tipi
Deg_adı As tipi
.........................
.........................
.........................
End Type

Bu sekil de tanımlanan tipte bir değişken tanımlamak için de;

Dim deg_adı As tip_ismi olarak tanımlanabilir.

Tip tanımı bir form içerisinde ancak Private olarak tanımlanabilir. Yani tanımlanan tip sadece o formda kullanılır. Genel yani Public bir tip ise ancak bir modül içerisinde kullanılabilir.

Bir formda tip;
Private Type Ad
..............
End Type şeklinde tanımlanır.


Örnek 5.1:
Type Rehber
Ad As String
Soyadı As String
Tel As Integer
Adres As String
End Type

Burada Rehber değişkenini değil Rehber tipini tanımladık. Artık Rehber yapısındaki değişkenleri tanımlayabiliriz.

Dim adı As Rehber şeklinde tanımlayabiliriz.

Bu değişkene değer atamak için “.” operatörünü kullanalım ;
Adı.Ad = “Bahadır”
5.2.1. Enum

Enum Tip İsmi
Elemen1=Sayı1
Eleman2=Sayı2
........................
Eleman3=SayıN
End Enum

Bu tip her bölüme bir numara verir. VB bu bölümü bir sayı olarak kullanmasına rağmen bunu bir string gibi kullanma imkanı verir.

Örnek 5.2:
Enum bolum
Bilgisayar=1
Elektronik=2
Makine=3
Metal=4
Yapı=5
YapıRes=6
End Enum

Tanımını yaptıktan sonra bolum tipinde değişkenler tanımlayarak bu değişkenlere değer atamak mümkündür.

Dim eğitim As bolum
Bolum=Bilgisayar

Satırı ile bolum değişkenine Bilgisayar atamaktayız. Bu işlem eğitim=1 satırı ile aynı işi yapmasına karşın anlaşılması daha kolaydır.

5.3. Dinamik Dizi Tanımlama

Programda tanımlanacak dizinin boyutu her zaman belli olmayabilir. Bu durumda diziyi dinamik olarak tanımlamamız gerekir. Diziyi dinamik olarak tanımlayabilmek için ReDim değimi kullanılır. Diziyi dinamik olarak tanımlamak demek dizinin boyunun ihtiyaç olduğunda artırılması veya azaltılması demektir. Üstelik dizinin eski halini koruyarak.
ReDim [Preserve] deg_adı (dizi boyutu] As tipi

ReDim ile dizin ilk defa tanımlanacağı gibi yine ReDim’le tanımlanmış dizinin boyutunu değiştirmek için de kullanılabilir. Burada Dim’den farklı olarak Preserve parametresi vardır.

Preserve, dizinin yeniden boyutlandırılması durumunda dizide bulunan elaman içeriklerini yeni dizide de bulunmasını sağlar.

Tanımlanacak dizi local bir dizi olmayacaksa dizi öncelikle Dim veya Global değimiyle aşağıdaki gibi tanımlanmalıdır.

Dim deg_adı () As tipi

Görüldüğü dizi tanımlanırken parantez içerisinde dizi boyutu verilmemiştir. Bu VB’ye dizinin dinamik olarak tanımlanacağını belirtecektir. Daha sonra dizinin elaman sayısı ReDim değimi kullanılarak belirlenir.

Private Type takip
Ad As String * 25
Soyad As String * 25
Sınıfı As String * 2
No As String *6
End Type

Dim Ogr () As takip “Diziyi dinamik olarak tanımla
Dim dizi_boyu As Integer ‘En son tanımlanan dizinin boyutu
Dim eleman_say As Integer ‘Dizideki son eleman indeksi

5.4. Global ve Local Değişkenler

Global değişkenler programın bütün fonksiyonları kullanılabilen değişkenlerdir. Local değişkenler ise sadece tanımlandıkları fonksiyonda kullanılabilirler.


Dim değimi ile yapılan tanımlamalar yerine Global ve Local’dır. Dim ile tanımlana değişkenler;

• General-Declarations kısmında tanımlanmışsa modül veya form içerisinde Global’dır. Buna VB’de Modüle Level denir.
• Bir fonksiyon veya alt programda tanımlanmışsa Local’dır. Sadece o prosedür tarafından kullanılabilir.
• Bir formun General Declarations kısmında Public değimi ile tanımlanmışsa diğer modüller ve formlarda bu değişkeni kullanabilirler. Ancak değişkenin isminden önce modülün/formun ismini vermesi gerekir.
Form1 . x = 4
• Bir değişkeni programın her tarafında kullanılacak şekilde tam olarak global tanımlamak için o değişkeni bir modülün General-Declaration kısmında Public değimi ile tanımlamak gerekir.
Public x

Local değişkenlerin önemli bir avantajı bellekte fazladan yer işgal
etmemeleridir (Static olarak kullanılmamışlarsa). Global değişkenler program çalıştığı sürece bellekte tutulmalarına rağmen local değişkenler, değişkenin bulunduğu fonksiyona girince değişken belleğe alınır ve fonksiyonun çalışması bitince bellekten atılır.

5.5. Static Değişkenler

Local olarak tanımlanan bir değişken tanımlandığı alt program veya fonksiyonun çalışması bittikten sonra bellekten atılır. İlgili prosedür ikinci kez çalıştırıldığında Local değişkenler eski değerlerinden değil baştan başlarlar.(string ise “ ”, sayı ise 0 )

Local olarak tanımlanan bir değişkenin değerinin tanımlandığı alt program veya fonksiyonun çalışması bittikten sonra da değerinin korunması isteniyorsa Dim yerne Static değimiyle tanımlama yapılır. Static değimi bir alt program veya fonksiyon altında tanımlanabilir:


Static deg_adı [(dizi boyutu)] As tipi





5.6. Sabit Tanımlama

Programda değerlerinin değişmesi istenmeyen değerler sabit olarak tanımlanır. VB sabit tanımlama;
Cost Sabit ismi=Değeri

Örnek 5.3:
Cost PI=3.1415


5.7. Değişkenlere İlk Değer Ataması

Local değişkenlere ilk değer ataması şu şekildedir.

• Dim değimiyle ile tip ismi kullanılmadan yapılan tanımlamalarda ilk değer ataması direk olarak tanımın yapıldığı satırda yapılabilir.
Dim x=5, y=10
• Tip ismi kullanılarak yapılan tanımlamalarda ise ikinci bir satırda ilk değer ataması yapılır.

Dim x As Integer
x=5

Global olarak tanımlanan değişkene ilk değer ataması Declarations kısmında yapılır ve burası bir alt program değildir. Dolayısıyla Global olarak tanımladığımız değişkenlerimize ilk değer atamasını Form_Load veya projenin çalışmaya başladığı alt program altında yapmalıyız.

Static değişkenlere de ilk değer ataması IsEmpty () fonksiyonu ile yapılır. Bu fonksiyon bir değişkene değer atanıp atanmadığını kontrol eder. Verilen değişkene değer ataması yapılmamışsa fonksiyondan geri dönen değer TRUE’dir. Fonksiyonun bu özelliğinden yararlanarak static olarak tanımlanan değişkene daha önce değer atanıp atanmadığını yani ilk defamı kullanıldığını öğrenebiliriz.




Static i;
If IsEmpty(i) then i=5
Böylece alt program ilk defa çalıştığında i’ye her hangi bir değer ataması olmadığı için şartımız çalışacak ve ilk değer atanacaktır. Alt programın sonraki seferlerde çalışması durumunda ise i’nin static olmasından dolayı atanmış bir değer olacak ve şartımız çalışmayacaktır. Böylece sadece alt program ilk defa çalıştığında ilk değerimizi atamış olacağız.

VB’de bir diziye değer ataması da değişkeni Variant olarak tanımladıktan sonra Array fonksiyonu ile o değişkenin bir dizi olduğunu belirtmek ve ilk değer atamak mümkündür.
Dim Dizi [As Variant]
Dizi=Arrray(eleman)

Örnek5.4:

Dim gün
Gün= Array(“Pazar”, “Pazartesi”, “Salı”, “Çarşamba”, “Perşembe”, “Cuma”, “Cumartesi”)

5.8.Kullanılan Değişkenlerin Tipini Belirlemek

Tipi belirtilmeyen Variant tipi değişkenlere programın işletimi sırasında istenen tipteki bilgi aktarılabilir. VarType fonksiyonu ile Variant bir değişkenin hangi tipte bilgi içerdiği öğrenilebilir.

VarType (Variant Değişken Adı)

Yazılımında da görüldüğü gibi bu fonksiyon dışarıdan içerdiği bilginin tipi öğrenilmek istenen değişkenin adını almaktadır. Geriye ise değişkenin içerdiği bilginin tipini temsil eden sayısal bir değeri döndürmektedir. Eğer Variant değişken karaktersel bilgi içeriyorsa VarType() fonksiyonu geriye 8 sayısal değerini döndürür. VarType fonksiyonu ile döndürülecek sayısal değer ve bu değerlerin temsil ettikleri veri tipleri aşağıdaki tabloda verilmiştir.
adszmo1.jpg





5.9. Tip Değiştirme İşlemleri

Ccur(ifade): Parantez içinde verilen ifadeyi Currency tipine dönüştürür.

CDbl(ifade): Parantez içinde verilen ifadeyi Double tipine dönüştürür.

CInt(ifade): Parantez içinde verilen ifadeyi Integer tipine dönüştürür.

CLng(ifade): Parantez içinde verilen ifadeyi Long tipine dönüştürür.

CSng(ifade): Parantez içinde verilen ifadeyi Single tipine dönüştürür.

CVar(ifade): Parantez içinde verilen ifadeyi Variant tipine dönüştürür.

CBool(ifade): Parantez içinde verilen ifadeyi Boolen tipine dönüştürür.

CByte(ifade): Parantez içinde verilen ifadeyi Byte tipine dönüştürür.

CDec(ifade): Parantez içinde verilen ifadeyi Decimal tipine dönüştürür.

CDate(ifade): Parantez içinde verilen ifadeyi Date tipine dönüştürür. İki tarih arasında işlem yapabilmek için bu dönüşüm kullanılır.

5.10. Değişkenlerle İlgili Komutlar

5.10.1. IsDate

Değişkenin içeriği geçerli bir tarih ise geri dönen tarih True, değilse False’dir kabul edilen tarih formatı Windows’da tanımlanan formattır.

IsDate (değişken)


Örnek 5.4:
Dim a
a=IsDate(“30/02/1999”) ‘ Verilen tarih geçerli değildir. A=True (Şubat ayı 29 gündür.
a=IsDate(“13bfg”) ‘Verilen tarih geçerli değildir. A=False

5.10.2. IsNumeric

Verilen değişkenin içeriğinin bir sayı olup olmadığını kontrol eder. Değişkenin içeriği sayı ise geri dönen değer True değilse False’dir.

IsNumeric(değişken)



5.10.3. IsArray

Girilen değişken bir dizi ise True değilse falese üretir. Yani bir değişkenin dizi olup olamadığını öğrenmek için kullanılır.

IsArray(değişken)

5.10.4. IsEmpty

Tanımlanmış bir değişkene henüz bir değer atanmamışsa o değişken Empty’dir. Bir değişkene değer atanıp atanmadığını öğrenmek için kullanılır. Dönen değer False ise değişkene bir atama yapılmıştır.

IsEmpty (Değişken)

5.10.5. IsMissing

VB’de fonksiyon veya alt programlara giriş parametresi olarak Optional değimi kullanılırsa o parametre kullanılmadan da o fonksiyon çağrılabilir. IsMissing fonksiyonu bu tip parametrelerin verilip verilmediğini kontrol etmek için kullanılır.

IsMissing (Değişken)

5.10.6. IsObject

Verilen değişkenin tipi Object tipinde ise fonksiyondan geriye True değeri döner.

IsObject (Değişken)

5.10.7. Erase
İsmi verilen diziyi siler.

Erase Diziismi
:ka19:
 
Paylasım icin tesekkurler.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst