30/09/2018, 21:25
Hỏi về tham số là con trỏ
Ví dụ em có 1 biến con trỏ int *ptrong hàm main:
int main()
{
int a;
int *p=&a;
}
và 1 hàm:
void func(int *pointer)
{
pointer=1 địa chỉ khác;
}
Thì khi em truyền p vào hàm func(): func§ thì giá trị của biến con trỏ p có bị thay đổi không, hay chỉ có giá trị của tham số pointer trong hàm func thôi?
Em xin cảm ơn.
Bài liên quan
Cách truyền như thế này giống như truyền biến bình thường vậy, nó chỉ lấy bản sao của con trỏ p thôi vì vậy không thay đổi được địa chỉ mà nó trỏ đến. Có thể test bằng đoạn code dưới. Bạn sẽ thấy chúng như nhau.
Em cảm ơn anh ạ .
Đấy là truyền giá trị có kiểu là pointer thôi. Thử cái này sẽ thấy khác biệt:
nếu như thế này thì phải đổi tên file lại là .cpp rồi, k để .c được
This post was flagged by the community and is temporarily hidden.