Bài giảng Nhập môn Lập trình: Phần 5
Số trang: 41
Loại file: ppt
Dung lượng: 230.00 KB
Lượt xem: 11
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Nhập môn Lập trình: Phần 5 - Con trỏ - Pointer giới thiệu tới các bạn về một số lý do nên sử dụng con trỏ; khai báo trong C; toán tử “&”; truyền tham số địa chỉ; con trỏ NULL; toán tử gán “=” con trỏ và mảng; chuỗi ký tự - String; cấu trúc - Struct.
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn Lập trình: Phần 5ContrỏPointer Contrỏ–Pointer Khaibáo Cáctoántử“&”,“*”,“=”,“+” Nhắclạivềtruyềnthamsốđịachỉ Contrỏvàmảng CấpphátvùngnhớđộngContrỏ–Mộtsốlýdonênsửdụng Con trỏ là kiểu dữ liệu lưu trữ địa chỉ của các vùngdữliệutrongbộnhớmáytính Kiểucontrỏchophép: Truyềnthamsốkiểuđịachỉ Biểudiễncáckiểu,cấutrúcdữliệuđộng Lưutrữdữliệutrongvùngnhớheap ContrỏđãđượcsửdụngtronghàmscanfContrỏ–KhaibáotrongC Kiểucontrỏphải được địnhnghĩa trênmộtkiểucơsở đãđượcđịnhnghĩatrướcđó. typedef kiểucơsở *Tênkiểu; typedef int *PINT; //PINTlàkiểucontrỏđịachỉvùngnhớkiểuint int x; PINT p; //p, p1: biến kiểu int * int *p1;Contrỏ–KhaibáotrongCint int *pi; *pi;long long int int *p; *p;float* float* pf; pf;char char c, c, d, d, *pc; *pc; /* /* cc và và dd kiểu kiểu char char pc pc là là con con trỏ trỏ đến đến char char */ */double* double* pd, pd, e, e, f; f; /* /* pd pd là là con con trỏ trỏ đến đến double double ee and and ff are are double double */*/char char *start, *start, *end; *end;ContrỏToántử“&” “&”:toántửlấyđịachỉcủa1biến Địa chỉ của tất cả các biến trong chương trình đều đã đượcchỉđịnhtừkhikhaibáo char char gg == z; z; p c int int main() main() {{ 0x1132 a 0x1132 char char cc == a; a; char char *p; *p; p g pp == &c; &c; 0x91A2 z pp == &g; &g; 0x91A2 return return 0; 0; }}ContrỏToántử“*” “*”:toántửtruyxuấtgiátrịcủavùngnhớđượcquảnlý bởicontrỏ.#include #include p cchar char gg == z; z; 0x1132 aint int main() main() aa 0x1132{{ zz char char cc == a; a; p g char char *p; *p; 0x91A2 z pp == &c; &c; 0x91A2 printf(%c , printf(%c , *p); *p); pp == &g; xuất giá trị do p đang &g; printf(%c , *p); quản lý printf(%c , *p); return return 0; 0;}}ContrỏTruyềnthamsốđịachỉ #include #include void void change(int change(int *v); *v); int int main() main() {{ int int var var == 5; 5; change(&var); change(&var); printf(main: printf(main: var var == %i , %i , var); var); return return 0; 0; }} void voidchange(int change(int *v) *v) {{ (*v) (*v) *= *= 100; 100; printf(change: printf(change: *v *v == %i , %i , (*v)); (*v)); }}ContrỏNULL Giátrịđặcbiệtđểchỉrằngcontrỏkhôngquản ...
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn Lập trình: Phần 5ContrỏPointer Contrỏ–Pointer Khaibáo Cáctoántử“&”,“*”,“=”,“+” Nhắclạivềtruyềnthamsốđịachỉ Contrỏvàmảng CấpphátvùngnhớđộngContrỏ–Mộtsốlýdonênsửdụng Con trỏ là kiểu dữ liệu lưu trữ địa chỉ của các vùngdữliệutrongbộnhớmáytính Kiểucontrỏchophép: Truyềnthamsốkiểuđịachỉ Biểudiễncáckiểu,cấutrúcdữliệuđộng Lưutrữdữliệutrongvùngnhớheap ContrỏđãđượcsửdụngtronghàmscanfContrỏ–KhaibáotrongC Kiểucontrỏphải được địnhnghĩa trênmộtkiểucơsở đãđượcđịnhnghĩatrướcđó. typedef kiểucơsở *Tênkiểu; typedef int *PINT; //PINTlàkiểucontrỏđịachỉvùngnhớkiểuint int x; PINT p; //p, p1: biến kiểu int * int *p1;Contrỏ–KhaibáotrongCint int *pi; *pi;long long int int *p; *p;float* float* pf; pf;char char c, c, d, d, *pc; *pc; /* /* cc và và dd kiểu kiểu char char pc pc là là con con trỏ trỏ đến đến char char */ */double* double* pd, pd, e, e, f; f; /* /* pd pd là là con con trỏ trỏ đến đến double double ee and and ff are are double double */*/char char *start, *start, *end; *end;ContrỏToántử“&” “&”:toántửlấyđịachỉcủa1biến Địa chỉ của tất cả các biến trong chương trình đều đã đượcchỉđịnhtừkhikhaibáo char char gg == z; z; p c int int main() main() {{ 0x1132 a 0x1132 char char cc == a; a; char char *p; *p; p g pp == &c; &c; 0x91A2 z pp == &g; &g; 0x91A2 return return 0; 0; }}ContrỏToántử“*” “*”:toántửtruyxuấtgiátrịcủavùngnhớđượcquảnlý bởicontrỏ.#include #include p cchar char gg == z; z; 0x1132 aint int main() main() aa 0x1132{{ zz char char cc == a; a; p g char char *p; *p; 0x91A2 z pp == &c; &c; 0x91A2 printf(%c , printf(%c , *p); *p); pp == &g; xuất giá trị do p đang &g; printf(%c , *p); quản lý printf(%c , *p); return return 0; 0;}}ContrỏTruyềnthamsốđịachỉ #include #include void void change(int change(int *v); *v); int int main() main() {{ int int var var == 5; 5; change(&var); change(&var); printf(main: printf(main: var var == %i , %i , var); var); return return 0; 0; }} void voidchange(int change(int *v) *v) {{ (*v) (*v) *= *= 100; 100; printf(change: printf(change: *v *v == %i , %i , (*v)); (*v)); }}ContrỏNULL Giátrịđặcbiệtđểchỉrằngcontrỏkhôngquản ...
Tìm kiếm theo từ khóa liên quan:
Nhập môn Lập trình Bài giảng Nhập môn Lập trình Con trỏ - Pointer Chuỗi ký tự Cấu trúc - Struct Con trỏ NULLGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 315 0 0 -
114 trang 237 2 0
-
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 trang 162 0 0 -
Giáo trình nhập môn lập trình - Phần 22
48 trang 136 0 0 -
Giáo trình Ngôn ngữ lập trình 2
50 trang 108 0 0 -
Bài giảng Nhập môn lập trình - Chương 12: Quản lý bộ nhớ
23 trang 63 0 0 -
Bài giảng Nhập môn lập trình: Bài 2 - Thuật toán
32 trang 36 0 0 -
Nhập môn lập trình (Đặng Bình Phương) - Các khái niệm cơ bản về hệ điều hành
17 trang 33 0 0 -
Câu hỏi bài tập nhập môn lập trình
11 trang 32 0 0 -
Bài giảng Nhập môn lập trình - Bài 3: Hệ điều hành
17 trang 29 0 0