Sử dụng Con trỏ trong C\C++


 CON TRỎ
-          Là một biến chứa địa chỉ của biến khác
-          Con trỏ kiểu nào chỉ trỏ đến biến kiểu đó
-          Khai báo:
<Kiểu dữ liệu> *<tên con trỏ>;
Vd:
int  *p; // p là con trỏ trỏ đến các biên số nguyên
float *p1;
-          Toán tử * và &
o   Toán tử *: dùng để lấy giá trị tại địa chỉ đứng sau nó
o   Toán tử &: dùng để lấy địa chỉ của biến
            Vd:
int x=4;
int *p;
// p trỏ vào x, nghĩa là p chứa địa chỉ của biến x
P=&x;
int y;
y=*p; //y=4
-          Con trỏ mảng
VD: int a[10]; // a: địa chỉ của mảng a (a chứa địa chỉ của phần tử a[0])
int *p;
P=a; // p trỏ vào phần tử a[0] => a[i] ó *(p+i)
-          Con trỏ cấu trúc
VD:
struct HS{
  char ht[30],lop[5],dc[50];
  float dT,dL,dH,dTong;
};

HS a[10],*p; // p: con trỏ cấu trúc
ð  Truy cập vào các trường trong cấu trúc ???
p=a; //
a[i].ht ó *(p+i).ht ó (p+i)->ht
p->lop
p->dT
Bài tập
   1. Viết chương trình:
a.      Nhập vào 1 dãy số nguyên có không quá 20 số
b.      In dãy vừa nhập
c.       Tìm max
d.      Tính tổng
e.       Sắp xếp
(dùng con trỏ mảng)

2  2.   Viết chương trình:
a.      Nhập thông tin của n học sinh (n<20) gồm các thông tin:
                                                          -    Họ tên
                                                          -     Địa chỉ
                                                          -    Tuổi
                                                          -     Lớp
                                                          -     Điểm toán, điểm lý, điểm hóa
b.      In thông tin của n học sinh
c.       Tính điểm tổng
d.      Đếm số học sinh đỗ đại hoc (điểm chuẩn=13)
e.       Tim học sinh có điểm cao nhât.
(dùng con trỏ cấu trúc)

Click để xem Tài liệu Lập trình C\C++