Danh mục

Tìm hiểu hàm và thư viện lập trình phần 5

Số trang: 5      Loại file: pdf      Dung lượng: 160.97 KB      Lượt xem: 7      Lượt tải: 0    
tailieu_vip

Phí tải xuống: miễn phí Tải xuống file đầy đủ (5 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

3.3.2 Truyền địa chỉint SumInt(int* p, int N); // Function call void main() { int a[] = {1, 2, 3, 4}; int k = SumInt(a,4); ... } // Function definition int SumInt(int* p, int N) { int *p2 = p + N, k = 0; while (p
Nội dung trích xuất từ tài liệu:
Tìm hiểu hàm và thư viện lập trình phần 5 3.3.2 Truyền ₫ịa chỉ int SumInt(int* p, int N); // Function call void main() { SP k k = 45 int a[] = {1, 2, 3, 4}; N=4 int k = SumInt(a,4); p=00A0 ... SP k k = 45 } a[3]=4 a[2]=3 // Function definition a[1]=2 int SumInt(int* p, int N) { a[0]=1 00A0 int *p2 = p + N, k = 0;© 2004, HOÀNG MINH SƠN while (p < p2) k += *p++; return k; } 21 Chương 3: Hàm và thư viện Truyền mảng tham số? int SumInt(int p[4], int N); // Function call void main() { int a[] = {1, 2, 3, 4}; Bản chất như int k = SumInt(a,4); trong ví dụ trước: ... Truyền ₫ịa chỉ! } // Function definition int SumInt(int p[4], int N) { int *p2 = p + N, k = 0;© 2004, HOÀNG MINH SƠN while (p < p2) k += *p++; return k; } 22 Chương 3: Hàm và thư viện Thử lại ví dụ ₫ọc từ bàn phím #include void ReadInt(const char* userPrompt, int* pN) { cout > *pN; } void main() { int x = 5; ReadInt(Input an integer number:, &x); cout Khi nào sử dụng truyền ₫ịa chỉ? Khi cần thay ₫ổi biến ₫ầu vào (truy nhập trực tiếp vào ô nhớ, không qua bản sao) Khi kích cỡ kiểu dữ liệu lớn => tránh sao chép dữ liệu vào ngăn xếp Truyền tham số là một mảng => bắt buộc truyền ₫ịa chỉ Lưu ý: Sử dụng con trỏ ₫ể truyền ₫ịa chỉ của vùng nhớ dữ liệu ₫ầu vào. Bản thân con trỏ có thể thay ₫ổi© 2004, HOÀNG MINH SƠN ₫ược trong hàm nhưng ₫ịa chỉ vùng nhớ không thay ₫ổi (nội dung của vùng nhớ ₫ó thay ₫ổi ₫ược): xem ví dụ biến p trong hàm SumInt trang 21. 24 Chương 3: Hàm và thư viện 3.3.3 Truyền tham chiếu (C++) #include void ReadInt(const char* userPrompt, int& N) { cout > N; } void main() { int x = 5; ReadInt(Input an integer number:, x); cout

Tài liệu được xem nhiều: