CURRENCY veri türü 10.000 ölçeklendirilmiş bir 8 bayt işaretli tamsayı ' dir. Böylece, bir dizi için CURRENCY türünde bir değişken:
(2 ^ 63 -1) / 10,000 = +922337203685477.5807
(2 ^ 63) / 10,000 = -922337203685477.5808
en çok 19 basamak ondalık ayırıcının sağındaki en fazla 4 basamaklı verilir.
CURRENCY türü 10.000 ölçeklenir için kendi iç gösterim 10.000 ile çarpılan gerçek değerdir. Örneğin 0.0001 değeri tutan bir CURRENCY değişken gibi depolanacak:
HIGH BYTE LOW BYTE
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001
bir kez, değişkenin adresi bulmak için sıradan tamsayılar ile daha yüksek bellek adresinde daha yüksek bayt depolanan gibi bulacaksınız düşük bayt, yukarıda depolanan ikinci bayt, üçüncü bayt, yukarıda, vb.. Örnek program altında görüntüler klavye GIRIŞ değerdir CURRENCY veri türü değişkeni için onaltılık makine gösterimi listeleniyor.
Kod örnek:
'To try this example in VBDOS.EXE:
' 1. From the File menu, choose New Project.
' 2. Copy the code example to the Code window.
' 3. Press F5 to run the program.
'
'To try this example in VB.EXE:
' 1. From the File menu, choose New Project.
' 2. Copy the code example to Form_Click event procedure.
' (Note: code will have to be slightly changed for VB)
' 3. Press F5 to run the program.
' 4. Click on the Form
'
'To try this example in QB.EXE or QBX.EXE
' 1. From the File menu, choose New Program.
' 2. Copy the code example to the Code window.
' 3. Press F5 to run the program.
'
'******************************************************************
' Sample program to display machine representation of the *
' CURRENCY data type (8-byte scaled INTEGER) *
'******************************************************************
CLS
DO UNTIL INKEY$ = CHR$(27)
PRINT "Enter a CURRENCY value. The machine representation will be "
PRINT "displayed in Hex"
INPUT a@ ' "@" is the CURRENCY data type suffix.
address% = VARPTR(a@) ' Get the address of the variable a@.
FOR i% = 7 TO 0 STEP -1
PRINT HEX$(PEEK(address% + i%)); " "; ' Display representation
NEXT i% ' in normal Low-Byte to
' the right form.
PRINT
PRINT "press a key to continue, Esc to EXIT"
SLEEP
LOOP
Makale numarası: 51414 - Son Gözden Geçirme: 16 Ağustos 2005 Salı - Gözden geçirme: 2.1
Bu makaledeki bilginin uygulandığı durum:
- Microsoft Visual Basic for MS-DOS
- Microsoft Visual Basic 1.0 Standard Edition
- Microsoft QuickBasic 4.0
- Microsoft QuickBASIC 4.0b
- Microsoft QuickBasic 4.5 for MS-DOS
- Microsoft BASIC Professional Development System 7.0
- Microsoft BASIC Professional Development System 7.1
Otomatik TercümeÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:
51414
(http://support.microsoft.com/kb/51414/en-us/
)
Kullanım Dışı Bilgi Bankası İçeriği Yasal UyarıBu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.