01/10/2018, 14:38

Hỏi nghĩa 1 câu tiếng anh

Being unaware that a function is expecting pointers as arguments for pass-by-reference and passing arguments by value.

Có phải nghĩa của nó là 1 hàm nhận con trỏ là 1 đối số truyền bằng tham chiếu và truyền cái đối số bằng giá trị đúng không??
Hơi lúng túng ở cái Being unaware…

Jacaré Junior viết 16:52 ngày 01/10/2018

Being unaware that a function is expecting pointers as arguments for pass-by-reference
and passing arguments by value. Some compilers take the values assuming they’re pointers
and dereference the values as pointers. At runtime, memory-access violationsor segmen-tation faultsare often generated. Other compilers catch the mismatch in types between
arguments and parameters and generate error messages.
vế sau thì tui hiểu rồi, có vế đầu dich ra mà không biết đọc sao cho vừa

rogp10 viết 16:46 ngày 01/10/2018

Đoạn văn trên trích từ Deitel, C How to Program 6th Edition, trang 262

Oops khi đặt vào trong ngữ cảnh thì nó ntn: (người lập trình) quên quy tắc truyền tham biến (hay không nhớ hàm truyền tham biến) mà truyền như tham trị. Một ví dụ điển hình: scanf("%d", n); hoặc khi đã tìm hiểu về mảng: removeX(arr, x, n); thay vì removeX(arr, x, &n);

Jacaré Junior viết 16:46 ngày 01/10/2018

À, hiểu rồi. Hàm nhận con trỏ mà truyền 1 biến thường.

Bài liên quan
0