30/09/2018, 19:11
Cho em hỏi về kiểu con trỏ
Em muốn hỏi sự khác nhau giữa * và *& em có ví dụ sau thì giá trị của p và p1 là giống hệt nhau thế tại sao vẫn là kiểu địa chỉ nhưng int *&p1 có thể viết =p nhưng không thể viết int *&p1 = &a được ạ ai giải thích cho e với
int a = 5;
int *p = &a;
int *&p1 = p;
cout << p << endl;
cout << p1 << endl;
cout << *p << endl;
cout << *p1 << endl;
Bài liên quan
Tra google Biến tham chiếu nhé !
vì biến tham chiếu phải tồn tại trong runtime (lúc chạy chương trình). &a tức là lấy địa chỉ của a, chỉ tồn tại trong compile time, hay &a chỉ tồn tại tạm thời lúc biên dịch code thôi, biên dịch xong thì &a cũng ko còn cần nữa.