• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Để chỉ số mảng luôn bắt đầu = 1

Các mẹo vặt linh tinh khác, không thuộc nhóm nào
User avatar
itbasic
Posts: 7
Joined: Wed 15/06/2005 6:54 pm
Been thanked: 2 times
Contact:

Để chỉ số mảng luôn bắt đầu = 1

Postby itbasic » Fri 18/04/2008 12:13 am

Thủ thuật: Để chỉ số mảng luôn bắt đầu = 1
Tác giả: itbasic
Mô tả: Các chỉ số mảng (index) luôn bắt đầu = 0, nhưng đôi khi trong xử lý dữ liệu chúng ta cần bắt đầu = 1. Để chỉ số mảng luôn bắt đầu = 1 (đối với các biến Array khai báo). Tại phần General bạn đặt tuyên bố Option Base 1.


Code: Select all

  1. Option Base 1
  2.  
  3. Dim arr(5) As String
  4.  
  5. Private Sub Form_Load()
  6.     arr(1) = "cau"
  7.     arr(2) = "lac"
  8.     arr(3) = "bo"
  9.     arr(4) = "vb"
  10.     arr(5) = ".com"
  11. End Sub



User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Để chỉ số mảng luôn bắt đầu = 1

Postby truongphu » Sat 19/04/2008 8:59 am

Phát biểu Option Base là quy định chỉ số phần tử thấp nhất của mảng, Option Base 1 nghĩa là các mảng được khai có chỉ số phần tử thấp nhất là 1 chứ không phải là 0 theo mặc định. Tuy nhiên còn tùy...
Chúng ta thử 2 ví dụ sau để xem Option Base 1 tác động thế nào

Code: Select all

  1. Option Base 1
  2.  
  3. Private Sub Form_Load()
  4. Dim arr() As String
  5. arr = Split("C,L,B,V,B", ",")
  6. MsgBox arr(1)
  7.  
  8. Dim arr2
  9. arr2 = Array("C", "L", "B", "V", "B")
  10. MsgBox arr2(1)
  11. End Sub

Ta thu được 2 kết quả khác nhau
Nói chung nên dùng kiểu truyền thông cho chắc ăn:
Dim aaa(1 to 10) as integer
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

User avatar
anhtuyenbk
Guru
Guru
Posts: 1311
Joined: Thu 22/09/2005 4:12 pm
Location: Một nơi chừa từng biết, chưa từng nghe, chưa từng thấy
Been thanked: 38 times

Re: Để chỉ số mảng luôn bắt đầu = 1

Postby anhtuyenbk » Sat 19/04/2008 9:21 am

Cái này cũng ko cần thiết lắm.
Nên tập làm quen với chỉ số 0 thì tốt hơn vì đa số các ngôn ngữ lập trình sau này đều mặc định là chỉ số 0, do đó khi chuyển đổi cũng dễ dàng hơn.
Kiếm cơm cho qua ngày tháng
https://www.facebook.com/pinduphongpisenchinhhang

User avatar
thuocthoigian
Thành viên danh dự
Thành viên danh dự
Posts: 167
Joined: Mon 31/07/2006 2:07 pm
Location: Minh Lộ - Thanh Hóa
Contact:

Re: Để chỉ số mảng luôn bắt đầu = 1

Postby thuocthoigian » Mon 21/04/2008 3:24 pm

cái này bên .net làm thế nào vậy?
Sự tưởng tượng còn quan trọng hơn kiến thức! (A.Einstein)

User avatar
anhtuyenbk
Guru
Guru
Posts: 1311
Joined: Thu 22/09/2005 4:12 pm
Location: Một nơi chừa từng biết, chưa từng nghe, chưa từng thấy
Been thanked: 38 times

Re: Để chỉ số mảng luôn bắt đầu = 1

Postby anhtuyenbk » Mon 21/04/2008 3:44 pm

thuocthoigian wrote:cái này bên .net làm thế nào vậy?

.Net không cho phép làm như vậy,chỉ số mảng luôn bắt đầu từ 0. :P
Kiếm cơm cho qua ngày tháng
https://www.facebook.com/pinduphongpisenchinhhang

User avatar
NTN
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 490
Joined: Wed 05/02/2014 3:43 pm
Location: Đồng Tháp,Việt Nam
Has thanked: 20 times
Been thanked: 8 times
Contact:

Re: Để chỉ số mảng luôn bắt đầu = 1

Postby NTN » Fri 09/01/2015 9:12 am

Vào bạn này tham gia năm 2005 tới này là 10 năm rồi ! kinh thật !
Contact me: trungnhan0911@yandex.com
Github: https://github.com/nhannt201


Return to “[VB] Mẹo vặt khác”

Who is online

Users browsing this forum: No registered users and 1 guest