Mọi người ơi,
Em đang học phần con trỏ và em có thắc mắc hai cái này ạ?
#include <iostream>
using namespace std;
int main()
{
int giatri = 6;
int *contro = &giatri;
cout << "Dia chi ban dau: "<< contro << endl; // dia chi cua bien giatri
contro++; // dua den dia chi tiep theo cac nhau 4 bytes theo kieu du lieu
// *contro++; // dua den dia chi tiep theo
cout << contro << endl;
cout << *contro << endl;
system("pause");
return 0;
}
Kết quả:
Theo em hiểu thì với:
-
contro++
thì địa chỉ mới sẽ tăng thêm 4 ô nhớ (theo kiểu dữ liệu) =>0x6ffe48
- còn
*contro++
thì nó truy cập vào địa chỉ0x6ffe44
và trỏ vào ô kế tiếp0x6ffe45
.Nhưng chương trình nó lại ra kết quả nhau là0x6ffe48
Em không biết em hiểu thế đúng hay chưa??? Có sai gì ai giúp em với ạ??
Em cám ơn <3