30/09/2018, 20:40

Hỏi về lập trình C++ như bao lần khác

Ai cho em hỏi và void change(int a) nó khác gì với void change(int *a) với ạ ???

Người bí ẩn viết 22:45 ngày 30/09/2018

mình chưa học về C++ nhưng biết được C. Theo mình thì void change(int *a) kiểu như là đặt biến con trỏ hay sao ấy. Còn void change(int a) là sử dụng hàm bình thường

Thanh Dang viết 22:57 ngày 30/09/2018

thì void change(int *a) kiểu như là đặt biến con trỏ hay sao ấy. Còn void change(int a) là sử dụng hàm bình thường

Nói thật là mình cũng ko hiểu con trỏ lắm XD cho mình hỏi là đặt biến con trỏ để làm gì đấy ???

Người bí ẩn viết 22:47 ngày 30/09/2018

Định nghĩa thì đọc trên Google nhé
3 video dưới đây giúp bạn dễ hình dung hơn:
Video 1: https://www.youtube.com/watch?v=cJQnATEEE5w&index=20&list=PLyiioioEJSxHVTaeL-ELYy6Io-I8diIVZ
Video 2: https://www.youtube.com/watch?v=dROGMxhWMa4&list=PLyiioioEJSxHVTaeL-ELYy6Io-I8diIVZ&index=20
Video 3: https://www.youtube.com/watch?v=rWaL4rIuTbc&index=21&list=PLyiioioEJSxHVTaeL-ELYy6Io-I8diIVZ

Thanh Dang viết 22:50 ngày 30/09/2018

Mình có xem rồi nhưng thực sự vẫn ko hiểu đc viết void change(int *a) để làm gì XP, nghĩa là dùng nó thì hơn gì void change(int a) ấy

Người bí ẩn viết 22:52 ngày 30/09/2018

Bạn phải coi kỹ nhá. Đừng “cưỡi ngựa xem hoa”.
Coi thử video này xem: https://www.youtube.com/watch?v=t38HrwL9rnE&index=63&list=PLyiioioEJSxHr5X8RNY3QXUGcjzeZeI7l
Mà đọc tác dụng của con trỏ trên Google chưa?

Văn Dương viết 22:49 ngày 30/09/2018

change(int a) :
Khi truyền biến số vào hàm qua a thì biến số được copy rồi truyền vào trong hàm. Khi đó là cái gì với a ở trong hàm cũng không ảnh hưởng đến biến số bên ngoài.

change(int *a) :
Ta sẽ truyền vào trong hàm con trỏ trỏ tới địa chỉ của biến số truyền vào hàm. Khi thay đổi giá trị của a thì giá trị biến số truyền hàm sẽ thay đổi.

Chốt : một cái copy ra một bản rồi đưa vào hàm và một cái bê nguyên đưa vào hàm.

Thanh Dang viết 22:52 ngày 30/09/2018

Sau 1 hồi mò mẫm thì đã hiểu tks mn

Bài liên quan
0