No11 - Con trỏ và kiểu con trỏ trong C++

1. Cơ bản về tổ chức bộ nhớ máy tính

- Bộ nhớ máy tính là tập hợp các ô nhớ nằm liền kề với nhau.
- Mỗi ô nhớ có kích cỡ 8bits (1 byte) và có một địa chỉ xác định trong bộ nhớ.
- Địa chỉ bộ nhớ là một dãy số hex. Trong C/C++ nó được biểu diễn theo khuôn mẫu
      0x<Dãy số hex>
    VD: 0xFA12CD34, 0xFA12CD35,...
Hình minh họa ô nhớ và địa chỉ ô nhớ
- Khi người sử dụng khai báo biến thì nó sẽ được cấp số ô nhớ lưu trữ tùy theo kích cỡ kiểu dữ liệu của biến.
VD:
                  int      a;         // biến a sẽ nằm trong 2 ô nhớ vì kiểu int có kích cỡ 2 byte
                  float   b;        //  biến b sẽ nằm trong 4 ô nhớ
                  long    c;        //  biến c sẽ nằm trong 4 ô nhớ
                  double  x;      //  biến x sẽ nằm trong 8 ô nhớ

2. Khái niệm con trỏ trong C++

- Con trỏ trong C++ là một dạng biến, gọi tắt là biến con trỏ, dùng để trỏ vào địa chỉ biến khác có cùng kiểu dữ liệu.
- Khai báo biến con trỏ:

      +  Cú pháp:  <kiểu dữ liệu>     *<tên biến>;

      +  VD:

                      int        a,b,c;
                      int        *p;
          => a, b, c là biến dữ liệu kiểu int, p là biến con trỏ kiểu int.

- Sử dụng biến con trỏ: Biến con trỏ không dùng chứa dữ liệu, nó dùng để chứa địa chỉ của biến dữ liệu cùng kiểu. Cách dùng
    <Tên biến con trỏ> = & <tên biến dữ liệu>;
VD:
   p = & b;
   biến p sẽ chứa địa chỉ của biến b, là một số hex, như mô tả ở phần 1.

Post a Comment

0 Comments