Khuyến mãi thêm!

Một phần của tài liệu [Tài liệu lập trình C] - Chương 2 Những kỹ thuật nâng cao! (Trang 26)

Bạn đã biết cách hiển thị giá trị của một biến số, nhưng bạn có biết chúng ta cũng có thể hiển thị địa chỉ của biến số đó?

...Đương nhiên là bạn chưa biết rồi

Để hiển thị địa chỉ của một biến số, chúng ta cần sử dụng kí hiệu %p (p ở đây viết tắt của từ

pointer) trong printf. Mặt khác, chúng ta phải đưa vào printf địa chỉ của biến số đó và để làm việc này, bạn cần phải đặt kí hiệu & trước biến số đó (tuoi), giống như cách tôi hướng dẫn bạn sử dụng scanf, xem code sau:

C code:

printf ("Dia chi cua bien so tuoi la %p", &tuoi); Kết quả

Console

Dia chi cua bien so tuoi la 0023FF74

Đó là địa chỉ của biến số tuoi trong thời điểm chương trình hoạt động. Vâng, 0023FF74 là một số, nó đơn giản chỉ được viết trên hệ hexadecimal (thập lục phân), thay vì hệ decimal (thập phân) mà chúng ta thường sử dụng. Nếu bạn thay kí hiệu %pthành %d, bạn sẽ nhận được một số thập

phân mà bạn biết.

Nếu bạn chạy chương trình này trên máy tính của bạn, địa chỉ sẽ khác hoàn toàn. Tất cả phụ thuộc vào phần trống có trong bộ nhớ, chương trình bạn đang dùng,... Hoàn toàn không có khả năng báo trước địa chỉ nào của biến số sẽ được cấp. Nếu bạn thử chạy chương trình liên tục nhiều lần, địa chỉ có thể sẽ không đổi trong thời điểm đó. Nhưng nếu bạn khởi động lại máy tính, chương trình chắc chắn sẽ hiển thị một giá trị khác.

Vậy chúng ta sẽ làm gì với tất cả những thứ đó? Tôi cần bạn nẵm vững những điều sau:

tuoi: tượng trưng cho giá trị của biến số.  &tuoi: tượng trưng cho địa chỉ của biến số. Với tuoi, máy tính sẽ đọc và gửi lại giá trị của biến số.

Một phần của tài liệu [Tài liệu lập trình C] - Chương 2 Những kỹ thuật nâng cao! (Trang 26)