1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng lập trình c nâng cao chương 3 lập trình con trỏ

22 1,3K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 148,37 KB

Nội dung

TRẦN MINH THÁI   Cập nhật: 02 tháng 04 năm 2015 Chương 3. Lập trình con trỏ #2 Nội dung     !"#$   % & #3 Biến tĩnh và biến động '()*"+"   %'*"   ' , (-.#/01- %'*"*0234"   5#"'*6"7"  589:*8;"<= *0  %#/189"!>"***0 #4 Địa chỉ của biến ?6"@#'"A ?' )B@' C-@' DE'F1898BG#-.H1-"6/I'*.8/@'( $J<J.F:#KJJ'I1-L@'F8 J1M"KJJ J #5 Địa chỉ của biến %JN %JO %JP %JQ 5-L'H 6/@ 'H %JNRR %JNRN %JNRO %JNRP 5-L' 6/@ ' S.,* THU U #6 Địa chỉ của biến 5-L@'66 #0"JVHW7'1(X"- 0 "JI0=I*Y=IZ :J1-L@' [' S., VW 2 H\]U TJ\NR^U TV_`H\aHb_I[HWU TV_`J\aHcI[JWU 3 K t quế ả Dia chi cua bien x = 0014FC00 Dia chi cua bien y = 0014FBF4 #7 Biến con trỏ %' #'1)X1-L@6XBI($G7J # 1-L@EG*)' d )Be??U S., eHU TeU f:J"-@ e??U #8 Con trỏ - Ví dụ VW 2 eHIJU TeIU J\NRU \NQ^U H\[JU \[U TV_CH\ab_IeHWU TV_C\aT_IeWU 3 Lấy địa chỉ của biến y gán vào px Lấy giá trị của con trỏ px Kết quả Gia tri cua px = 10 Gia tri cua pa = 14.5 #9 Con trỏ - Ví dụ VW 2 eHIJU TeIU J\NRU \NQ^U H\[JU \[U TV_`J\aHb_I[JWU TV_`H\aHb_IHWU TV_`\aHb_I[WU TV_`\aHb_IWU 3 Dia chi cua bien y = d7f7dc Dia chi cua bien px = d7f7dc Dia chi cua bien b = d7f7c4 Dia chi cua bien pa = d7f7c4 #10 Sử dụng biến con trỏ VW 2 eHU TV_g"H_WU TV_a_IHWU TV_CH\a_IeHWU 3 !!!Chưa cấp phát bộ nhớ trước khi sử dụng [...]... (*Ham)(int, int) = ChuVi; int p = Tinh(a, b, Ham); printf("Chu vi cua hcn = %d", p); } Bài tập #21 1 Viết chương trình gồm c c ch c năng c bản xử lý mảng một chiều số nguyên dùng con trỏ 2 3 Viết chương trình gồm c c ch c năng c bản xử lý ma trận số nguyên dùng con trỏ Dùng kỹ thuật con trỏ hàm, viết chương trình tính tổng, hiệu, tích và thương c a hai phân số phụ thu c vào người dùng chọn ch c năng nào... biến con trỏ #11 void ViDu4() { C p phát bộ nhớ cho px int *px; px = (int *)calloc(1, sizeof(int)); printf("Nhap vao gia tri cho con tro px: "); scanf("%d", px); printf("Gia tri cua px = %d", *px); } Kết quả Nhap vao gia tri cho con tro px: 16 Gia tri cua px = 16 C p phát và giải phóng vùng nhớ #12 Biến con trỏ phải đư c cấp phát vùng nhớ trư c khi sử dụng Cách 1: dùng calloc //khai báo con trỏ p... / /c p phát 100 ô nhớ mỗi ô chiếm 2bytes p=(int *) calloc (100, sizeof (int)); C p phát và giải phóng vùng nhớ # 13 Biến con trỏ phải đư c cấp phát vùng nhớ trư c khi sử dụng Cách 2: dùng malloc //Khai báo con trỏ px int *px; / /C p phát 100 ô nhớ kiểu int cho con trỏ px px = (int *) malloc (100); Sau khi sử dụng xong thì giải phóng vùng nhớ bằng hàm free free(p) ; // giải phóng vùng nhớ cho con trỏ. .. p C p phát và giải phóng vùng nhớ #14 void main() { int *px; px = (int *)malloc(1); printf("Nhap vao gia tri cho con tro px: "); scanf("%d", px); printf("Gia tri cua px = %d", *px); free(px); } Giải phóng con trỏ px Con trỏ và mảng một chiều #15 int a[7]; int *px; px = a; //px trỏ tới phần tử thứ 0 px = px + 4; //px trỏ tới phần tử thứ 4 a[0] px a[1] a[2] a [3] a[4] a[5] a[6] Con trỏ và mảng một chiều... XuatMang(a, n); free(a); } Con trỏ hàm #18 Khai báo: (*Tên hàm)(tham số); VD: int *Tong(int a, int b); Thích hợp cho vi c tùy chọn (switch) gọi th c hiện trong danh sách c c hàm Con trỏ hàm #19 int ChuVi(int a, int b) { return (a + b) * 2; } int DienTich(int a, int b) { return a*b; } int Tinh(int a, int b, int (*Ham)(int, int)) { int kq = (*Ham)(a, b); return kq; } Con trỏ hàm #20 void main() {... main() scanf("%d", a+i); { int *a, n=4; } Ho c &a[i] } a=(int *)malloc(n); NhapMang(a, n); XuatMang(a, n); void XuatMang(int *a, int n) free(a); { } for(int i=0; i . dụ VW 2 eHIJU TeIU JNRU NQ^U H[JU [U TV_`JaHb_I[JWU TV_`HaHb_IHWU TV_`aHb_I[WU TV_`aHb_IWU 3 Dia chi cua bien y = d7f7dc Dia chi cua bien px = d7f7dc Dia chi cua bien b = d7f 7c4 Dia chi cua bien pa = d7f 7c4 #10 Sử dụng biến con trỏ VW 2 eHU TV_g"H_WU TV_a_IHWU TV _C Ha_IeHWU 3 !!!Chưa. chiều gD"VeIW 2 TVRUoUnnW 2 TV_ga_IWU TV_a_InWU 3 3 pD"VeIW 2 TVRUoUnnW 2 TV_ab_IeVnWWU 3 3 void main() { int *a, n=4; a=(int *)malloc(n); NhapMang(a, n); XuatMang(a, n); free(a); } Ho c &a[i] Ho c a[i] #17 Thay đổi kích thư c của con trỏ đã c p phát d realloc(tên con. nhớ %'!189:7"/8/*i," C ch 1: dng calloc //khai báo con trỏ p int *p; / /c p phát 100 ô nhớ mỗi ô chiếm 2bytes p=(int *) calloc (100, sizeof (int)); # 13 C p phát và giải phóng vùng nhớ %'!189:7"/8/*i," C ch

Ngày đăng: 04/09/2015, 15:20

TỪ KHÓA LIÊN QUAN