Tham khảo tài liệu 'ngôn ngữ lập trình c++ từ cơ bản đến hướng đối tượng part 4', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | x y y temp Trong ví dụ địa chỉ của các tham sô thực a vầ b được sao vào ngăn xếp và đây cũng chính là trị của các tham sô hình thức cấc con trỏ X và y . Như vậy ta có X - a y b hay nói cách khác X và y trỏ đến hai biến a và b và do vậy x và ỵ chính là cách truy nhập gián tiếp đên hai biến a và 6. Bằng cách này rõ ràng trong hàm bị gọi ta đã làm việc trực tiếp với các tham số thực và vì vậy mọi sự thay đổi của tham sô hình thức sẽ phản ánh lên tham số thực. Kết quả của chương trình sẽ là Giá trị của avà b sau khi hoán vị ỉà a 8 b 7 Ta hãy xét thêm một số ví dụ vê cách truyền các tham sô chọ hàm bằng địa chỉ. Ví dụ Xây dựng hàm để in các giá trị chứa trong bộ nhớ từ một địa chỉ nào đó. Hàm sẽ kết thúc ỉàm việc khi gõ một phím bất kỳ. include include void dum unsigned int Nguyên mâu hàm void main círscr 153 unsigned long int START cout Nhập địa chỉ bắt đầu khảo sát cin START dum START Hàm hiển thị nội dung bộ nhớ bắt đầu từ địa chỉ START void dum unsigned int start char far p int i p char far start Chuyển thành con trỏ chỉ đến kiểu char for i 0 i p if i 16 cout endl 5 lì Độ rộng của vùng hiển thị cout int p if kbhit return Chương trình đưa ra địa chỉ cửa vùng nhớ đầu tiên cần khảo sát thông qua biến START. Bắt đầu từ dịa chỉ này chương trình sẽ hiển thị nội dung của các ô ký ức kế tiếp nhau cho đến khi gõ một phím bất kỳ từ bàn phím. Trong chương trình có sử dụng từ khoá far với mục đích cho phép con trỏ có thế truy nhập 154 đên các ô ký ức không nằm trong cùng segment vói đoạn mã chương trình. Cũng với mục đích này địa chỉ đổu START dược khai báo theo kiểu unsigned long int. Trên mỗi dòng của màn hình sẽ in nội dung của 16 bỵte liên tiêp trong bộ nhớ. Trong chương trình có sử dụng hàm kbhit hàm này dùng để kiểm tra trên bán phím có phím nào được gõ hay không. Khi một phím được gõ hàm này trả lại giá trị khác 0 và chương trình sẽ ngừng thực hiện. Ví dụ Giả sử ngăn xếp có cấu trúc lưu trữ ỉà vectơ. Hãy xăy dựng các hàm loại bỏ .