Con trỏ (lập trình máy tính)

kiểu dữ liệu
Tôi xem các câu lệnh gán và biến con trỏ là "những kho báu giá trị nhất" trong khoa học máy tính.

Donald Knuth, Structured Programming with go to Statements[1]

Trong khoa học máy tính, con trỏ (tiếng Anh: pointer) là một đối tượng ngôn ngữ lập trình, mà giá trị nó chỉ tới giá trị khác được chứa nơi nào đó trong bộ nhớ máy tính sử dụng địa chỉ bộ nhớ. Một con trỏ tham chiếu (reference) đến một vị trí trong bộ nhớ, và lấy giá trị được lưu ở vị trí đó được gọi là tham chiếu ngược (dereferencing) con trỏ. Minh họa bằng ví dụ là: Một số của trang được chỉ trong mục lục của một cuốn sách có thể được xem là con trỏ tới trang tương ứng; tham chiếu ngược con trỏ có thể được thực hiện bằng cách lật tới trang đã cho và đọc văn bản trong trang đó.

Con trỏ 'a' chỉ đến địa chỉ bộ nhớ liên kết tới biến 'b'. Trong sơ đồ này, kiến trúc điện toán sử dụng cùng không gian địa chỉdữ liệu nguyên thủy cho cả con trỏ và không phải con trỏ.

Lịch sử sửa

Harold Lawson được ghi nhận đã phát minh ra con trỏ vào năm 1964.[2] Năm 2000, Lawson đã được trao giải thưởng Computer Pioneer Award bởi IEEE.[3] Theo Từ điển tiếng Anh Oxford, từ con trỏ xuất hiện lần đầu trong bản in như là con trỏ ngăn xếp (stack pointer) trong một bản ghi nhớ kỹ thuật của System Development Corporation.

Mô tả chính thức sửa

Trong khoa học máy tính, con trỏ là một dạng của tham chiếu.

Xem thêm sửa

Tham khảo sửa

  1. ^ Donald Knuth (1974). “Structured Programming with go to Statements” (PDF). Computing Surveys. 6 (5): 261–301. doi:10.1145/356635.356640. Bản gốc (PDF) lưu trữ ngày 24 tháng 8 năm 2009.
  2. ^ Milestones in Computer Science and Information Technology
  3. ^ “IEEE Computer Society awards list”. Bản gốc lưu trữ ngày 22 tháng 3 năm 2011. Truy cập ngày 14 tháng 6 năm 2017.

Liên kết ngoài sửa