VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test

C++ Cơ Bản

Ngôn ngữ lập trình C++ là gì? Lịch sử của C++ Các tính năng của C++ Cài đặt môi trường lập trình C++ Chương trình C++ đầu tiên Biến trong C++ Các kiểu dữ liệu trong C++ Ép kiểu trong C++ Từ khóa trong C++ Các toán tử trong C++ Comment trong C++ Các hằng số trong C++ count, cin và endl trong C++ Ký tự đặc biệt trong C++ Namespace trong C++ Template trong C++ Modifier trong C/C++

Câu Lệnh Điều Khiển C++

Mệnh đề if-else Mệnh đề switch Vòng lặp for Vòng lặp while Vòng lặp do-while Lệnh Break Lệnh Continue Lệnh Goto

C++ Function

Hàm trong C++ Hàm do người dùng định nghĩa Các kiểu hàm trong C++ Đệ quy trong C++ Call by value Call by reference

C++ Array

Mảng (array) trong C++ Mảng 2 chiều trong C++ Truyền mảng vào hàm

C++ Poiter

Con trỏ trong C++ Con trỏ Null trong C++ Con trỏ số học trong C++ Con trỏ và mảng trong C++ Mảng con trỏ trong C++ Con trỏ tới con trỏ trong C++ Truyền con trỏ tới hàm trong C++ Trả về con trỏ từ hàm trong C++

C++ Lớp Object

Khái niệm lập trình hướng đối tượng trong C++ Lớp và đối tượng trong C++ Constructor trong C++ Destructor trong C++ this trong C++ static trong C++ struct trong C++ Enumeration trong C++ Hàm Friend trong C++ Hàm Math trong C++ Tính kế thừa trong C++ Tính đa hình trong C++ Tính trừu tượng trong C++ Tính đóng gói trong C++ Interface trong C++

Nạp Chồng Toán Tử

Nạp chồng toán tử và Nạp chồng hàm trong C++ Nạp chồng toán tử một ngôi trong C++ Nạp chồng toán tử nhị phân trong C++ Nạp chồng toán tử quan hệ trong C++ Nạp chồng toán tử Input/Output trong C++ Nạp chồng toán tử ++ và -- trong C++ Nạp chồng toán tử gán trong C++ Nạp chồng toán tử gọi hàm () trong C++ Nạp chồng toán tử subscript [] trong C++ Nạp chồng toán tử truy cập thành viên lớp (->) trong C++

Lập Trình C++

Xử lý ngoại lệ trong C++ Đa luồng trong C++
Bài Tập C++ Có Lời Giải
1 / 3
❮ ❯

Truyền mảng vào hàm trong C++


Mảng 2 chiều trong C++
Con trỏ trong C++

Trong bài này, bạn sẽ tìm hiểu về việc truyền mảng vào hàm trong C++. Bạn sẽ học cách truyền cả mảng một chiều và đa chiều.

Trong lập trình C++, một phần tử mảng đơn lẻ hoặc toàn bộ mảng có thể được chuyển tới một hàm.

Điều này có thể được thực hiện cho cả mảng một chiều hoặc mảng đa chiều.


Nội dung chính

  • Truyền mảng tới hàm trong C++
    • Có 3 cách để khai báo hàm nhận mảng làm đối số:
  • Truyền một phần tử của mảng một chiều vào hàm trong C++
  • Truyền toàn bổ mảng một chiều vào hàm
  • Truyền mảng đa chiều vào hàm

Truyền mảng tới hàm trong C++

Để truyền dữ liệu của mảng vào hàm, chúng ta có thể tạo các hàm nhận mảng làm đối số. Để truyền mảng trong hàm, chúng ta chỉ cần viết tên mảng trong lệnh gọi hàm.

function_name(array_name); // truyền mảng

Có 3 cách để khai báo hàm nhận mảng làm đối số:

Cách thứ nhất:

return_type function(type array_name[])

Khai báo ký hiệu chỉ số trống [] là kỹ thuật được sử dụng rộng rãi.

Cách thứ hai:

return_type function(type array_name[SIZE])

Theo tùy chọn, chúng ta có thể xác định kích thước của mảng trong ký hiệu chỉ số [].

Cách thứ ba:

return_type function(type *array_name)

Bạn cũng có thể sử dụng khái niệm con trỏ.


Truyền một phần tử của mảng một chiều vào hàm trong C++

Một phần tử của một mảng có thể được truyền theo cách tương tự như truyền biến cho một hàm. Ví du:

#include <iostream>

using namespace std;

void display(int age) {
    cout << age;
}

int main() {
    int ageArray[] = { 2, 3, 4 };
    display(ageArray[2]); //chi truyen phan tu ageArray[2].
    return 0;
}

Kết quả:

4

Truyền toàn bổ mảng một chiều vào hàm

Trong khi truyền các mảng làm đối số cho hàm, chỉ có tên của mảng được truyền (tức là địa chỉ bắt đầu của vùng nhớ được chuyển làm đối số).

Chương trình C++ truyền một mảng chứa tuổi của người vào một hàm. Hàm này tìm độ tuổi trung bình và hiển thị độ tuổi trung bình trong hàm main().

#include <iostream>

using namespace std;

// dinh nghia prototype
float average(float age[]);

int main() {
 float avg, age[] = { 23.4, 20, 22.6, 3, 40.5, 18};
 avg = average(age); // chi ten cua mang duoc truyen nhu mot doi so
 cout << "Tuoi trung binh la: " << avg;
 return 0;
}

float average(float age[]) {
 int i;
 float avg, sum = 0.0;
 for (i = 0; i < 6; ++i) {
  sum += age[i];
 }
 avg = (sum / 6);
 return avg;
}

Kết quả:

Tuoi trung binh la: = 21.25

Truyền mảng đa chiều vào hàm

Để truyền mảng hai chiều tới một hàm làm đối số, địa chỉ bắt đầu của vùng bộ nhớ được đặt trước được truyền như trong mảng một chiều.

Ví dụ: Truyền các mảng hai chiều đến một hàm.

#include <iostream>

using namespace std;

const int ARR_X = 3;
const int ARR_Y = 4;

// dinh nghia prototype
void displayNumbers(int num[ARR_X][ARR_Y]);

int main() {
    int num[ARR_X][ARR_Y], i, j;
    printf("Nhap mang num :\n");
    for (i = 0; i < ARR_X; i++) {
        for (j = 0; j < ARR_Y; j++) {
            printf("num[%d][%d]=", i, j);
            cin >> num[i][j];
        }
    }
    // truyen mang da chieu vao ham displayNumbers
    displayNumbers(num);
    return 0;
}

/*
 * hien thi mang 2 chieu
*/
void displayNumbers(int num[ARR_X][ARR_Y]) {
    int i, j;
    printf("Mang 2 chieu:\n");
    for (i = 0; i < ARR_X; i++) {
        for (j = 0; j < ARR_Y; j++) {
            printf("%d ", num[i][j]);
        }
        printf("\n");
    }
}

Kết quả:

Nhap mang num :
num[0][0]=1
num[0][1]=2
num[0][2]=3
num[0][3]=4
num[1][0]=5
num[1][1]=6
num[1][2]=7
num[1][3]=8
num[2][0]=9
num[2][1]=10
num[2][2]=11
num[2][3]=12
Mang 2 chieu:
1 2 3 4
5 6 7 8
9 10 11 12

Mảng 2 chiều trong C++
Con trỏ trong C++

Recent Updates

Đa luồng trong C++Xử lý ngoại lệ trong C++Nạp chồng toán tử truy cập thành viên lớp (->) trong C++Nạp chồng toán tử subscript [] trong C++Nạp chồng toán tử gọi hàm () trong C++Nạp chồng toán tử gán trong C++Nạp chồng toán tử ++ và -- trong C++Nạp chồng toán tử Input/Output trong C++Nạp chồng toán tử quan hệ trong C++Nạp chồng toán tử nhị phân trong C++Nạp chồng toán tử một ngôi trong C++Nạp chồng toán tử và Nạp chồng hàm trong C++Sắp Tết 2026 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2026?

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml