tailieunhanh - Bài giảng Kỹ thuật lập trình: Bài 7 - TS. Ngô Hữu Dũng

Bài giảng Kỹ thuật lập trình: Bài 7 do TS. Ngô Hữu Dũng biên soạn cung cấp cho người học các kiến thức: Khái niệm con trỏ, con trỏ và địa chỉ, kiểu con trỏ, phạm vi ứng dụng con trỏ, lợi hại của con trỏ, kiểu nguyên thủy, con trỏ và hằng số, con trỏ và đối số của hàm,. | Kỹ thuật lập trình Bài 7 – Kiểu con trỏ TS. Ngô Hữu Dũng 181 Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Khái niệm con trỏ (pointer) Con trỏ là biến mà giá trị của nó là địa chỉ bộ nhớ Địa chỉ bộ nhớ? scanf(“%d”,&i); // &i là địa chỉ bộ nhớ của biến i Khai báo type * variable_name; Con trỏ lưu địa chỉ bộ nhớ 182 p = 0073FB60 Biến i = 20 Địa chỉ i 0073FB60 int i = 20; p 0073FB54 int * p; // Khai báo con trỏ p p = &i; // Con trỏ p được gán bằng địa chỉ của biến i Ta nói con trỏ p “trỏ vào” biến i Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Giá trị 20 0073FB60 Con trỏ và địa chỉ int x; // Biến số nguyên x // Con trỏ p kiểu số nguyên 2. int *p; 3. p = &x; // p trỏ vào x 4. x = 20; 5. printf("%d ", x); // Giá trị của x 6. printf("%d ", *p); // Giá trị của x // Địa chỉ của x 7. printf("%p ", &x); 8. printf("%p ", p); // Địa chỉ của x 9. *p = 40; 10. printf("Gia tri: %d = %d" , *p, x); 11. printf("Dia chi: %p = %p" , p, &x); 1. 183 Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Kiểu con trỏ Khai báo: Dùng dấu * Địa chỉ của biến mà con trỏ trỏ vào *p = x In ra màn hình địa chỉ: Dùng %p p = &x Giá trị của biến mà con trỏ trỏ vào: Dùng dấu * int *p; printf(“%p = %p”, p, &x); Chú ý: Phân biệt các dấu * và các dấu & 184 Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu Dũng Sử dụng con trỏ Chưa trỏ vào biến int *p; *p = 40; // Run-time error! Trỏ vào biến 185 int x, *p1, *p2; p1 = &x; // Trỏ p1 vào biến x *p1 = 40; // x = 40; p2 = p1; // gán trực tiếp, tương đương với p2 = &x; *p2 = 50; // x = 50; *p1 = 60; // x = 60; Kỹ thuật lập trình | DHTH11C | HK1 | 2016-2017 Ngô Hữu .

TỪ KHÓA LIÊN QUAN
crossorigin="anonymous">
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.