• 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
Hình đại diện của người dùng
itbasic
Bài viết: 7
Ngày tham gia: T.Tư 15/06/2005 6:54 pm
Been thanked: 2 time
Liên hệ:

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

Gửi bàigửi bởi itbasic » T.Sáu 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.


Mã: Chọn hết

  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



Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

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

Gửi bàigửi bởi truongphu » T.Bảy 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

Mã: Chọn hết

  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

Hình đại diện của người dùng
anhtuyenbk
Guru
Guru
Bài viết: 1311
Ngày tham gia: T.Năm 22/09/2005 4:12 pm
Đến từ: Một nơi chừa từng biết, chưa từng nghe, chưa từng thấy
Been thanked: 38 time

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

Gửi bàigửi bởi anhtuyenbk » T.Bảy 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

Hình đại diện của người dùng
thuocthoigian
Thành viên danh dự
Thành viên danh dự
Bài viết: 167
Ngày tham gia: T.Hai 31/07/2006 2:07 pm
Đến từ: Minh Lộ - Thanh Hóa
Liên hệ:

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

Gửi bàigửi bởi thuocthoigian » T.Hai 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)

Hình đại diện của người dùng
anhtuyenbk
Guru
Guru
Bài viết: 1311
Ngày tham gia: T.Năm 22/09/2005 4:12 pm
Đến từ: Một nơi chừa từng biết, chưa từng nghe, chưa từng thấy
Been thanked: 38 time

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

Gửi bàigửi bởi anhtuyenbk » T.Hai 21/04/2008 3:44 pm

thuocthoigian đã viết: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

Hình đại diện của người dùng
NTN
Thành viên tâm huyết
Thành viên tâm huyết
Bài viết: 472
Ngày tham gia: T.Tư 05/02/2014 3:43 pm
Đến từ: Cao Lãnh, Đồng Tháp,Việt Nam
Has thanked: 19 time
Been thanked: 7 time
Liên hệ:

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

Gửi bàigửi bởi NTN » T.Sáu 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 !
Dongthapseo.com - Luutru360.com - Tình yêu của tôi <3


Quay về “[VB] Mẹo vặt khác”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách