DANH SÁCH LIấN KẾT 4.1 Giới thiệu
4.2.1- Biến khụng động (biến tĩnh)
Khi xõy dựng chương trỡnh, lập trỡnh viờn cú thể xỏc định được ngay những đối tượng dữ liệu cần sử dụng, thụng qua nhu cầu thay đổi về số lượng, kớch thước. Do đú cú thể xỏc định cỏch thức lưu trữ chỳng ngay từ đầu. Cỏc đối tượng dữ liệu này sẽ được khai bỏo như cỏc biến khụng động. Biến khụng động là những biến cú một số tớnh chất sau :
éược khai bỏo tường minh (được xỏc định rừ ràng lỳc mụ tả kiểu hay khai bỏo biến ).
Tồn tại khi vào phạm vi khai bỏo và chỉ mất khi ra khỏi phạm vi này. Thường là tồn tại trong suốt quỏ trỡnh chương trỡnh đú hoạt động.
éược cấp phỏt vựng nhớ trong vựng dữ liệu (Data segment) hoặc Stack (đối với biến cục bộ).
Do được khai bỏo tường minh, cỏc biến khụng động cú một định danh đó được kết nối với địa chỉ vựng nhớ lưu trữ biến và được truy xuất trực tiếp thụng qua định danh đú.
Vớ dụ:
Var so_nguyen : Integer ;
Ky_tu : Char;
K_tra : Boolean;
4.2.2. Biến động
Là những biến được tạo ra một cỏch linh hoạt trong chương trỡnh, theo mục đớch nhu cầu của người lập trỡnh. Cỏc biến động khụng được gỏn tờn ( vỡ việc đặt tờn thực chất là gỏn cho nú một địa chỉ xỏc định trong vựng nhớ), việc truy xuất đến biến động khụng thụng qua tờn mà thụng qua cỏc biến con trỏ. Cỏc biến con trỏ được định nghĩa như một biến tĩnh ngay từ đầu chương trỡnh và được dựng để chứa địa chỉ cỏc biến động.
Việc tạo ra một biến động hay xúa bỏ biến đú ( cấp phỏt hay thu hồi lại vựng nhớ đối với biến động đú ) được thực hiện nhờ cỏc thủ tục cú sẵn là NEW ( cấp phỏt mới ) và DISPOSE ( thu hồi ).
4.2.3. Kiểu con trỏ
Cho trước kiểu T=<V,O>. Kiểu con trỏ, ký hiệu "TP", chỉ đến cỏc phần tử cú kiểu "T" được định nghĩa :
TP = <VP ,OP> Trong đú :
VP = {cỏc địa chỉ lưu trữ những đối tượng cú kiểu T, NIL} (với NIL là một giỏ trị đặc biệt tượng trưng cho một giỏ trị khụng biết hoặc khụng quan tõm ở đõy ta gọi là giỏ trị vụ cựng).
OP = { tập cỏc thao tỏc xỏc định địa chỉ của một đối tượng thuộc kiểu T khi biết con trỏ chỉ đến đối tượng đú} (Thường gồm cỏc thao tỏc tạo một con trỏ chỉ đến một đối tượng thuộc kiểu T; huỷ một đối tượng dữ liệu thuộc kiểu T khi biết con trỏ chỉ đến đối tượng đú).
Núi một cỏch dễ hiểu, kiểu con trỏ là kiểu cơ sở dựng lưu địa chỉ của một đối tượng khỏc.Biến thuộc kiểu con trỏ TP là biến mà giỏ trị của nú là địa chỉ của một vựng nhớ ứng với một biến kiểu T, hoặc là giỏ trị NIL.
Lưu ý :
Kớch thước của biến con trỏ tuỳ thuộc vào quy ước số byte địa chỉ trong từng mụ hỡnh bộ nhớ của từng ngụn ngữ lập trỡnh cụ thể.
4.3. Danh sỏch
Danh sỏch là một dóy hữu hạn cỏc phần tử thuộc cựng một lớp cỏc đối tượng, vớ dụ như danh sỏch lớp, danh sỏch Nhõn viờn, bảng lương...
Giả sử L là một danh sỏch cú n phần tử ( n >=0 ) L = (a1, a2, .... , an )
Ta gọi n là độ dài của danh sỏch, nếu n >=1 thỡ a1 được coi là phần tử đầu danh sỏch, cũn an coi là phần tử cuối danh sỏch. Nếu n = 0 nghĩa là danh sỏch khụng cú phần tử nào (danh sỏch rỗng).
Cỏc phần tử của danh sỏch được sắp tuyến tớnh, nếu danh sỏch cú n (n>1) phần tử thỡ phần tử a1 đứng trước phần tử a2 phần tử a2 đứng trước phần tử a3 … khi đú ta coi phần tử ai là phần tử đứng vị trớ thứ i của danh sỏch.