Như tiêu đề, em muốn tạo một hàm để nhập giá trị phần tử cho một mảng 2 chiều, vd:
void inputElement (int arr[][], int sizeRow, int sizeColumn) {
for (int r=0; r<sizeRow; r++) {
for (int c=0; c<sizeColumn; c++) {
cout << "Enter element [" << r << "][" << c << "]: ";
cin >> arr[r][c];
}
}
}
nhưng khi compile thì bị báo lỗi. Em lên search google thì có cách chỉ này:
void inputElement (int *arr, int sizeRow, int sizeColumn) {
for (int r=0; r<sizeRow; r++) {
for (int c=0; c<sizeColumn; c++) {
cout << "Enter element [" << r << "][" << c << "]: ";
cin >> arr[r*sizeColumn+c];
}
}
}
int main() {
...
int mang[Rows][Columns]; //Rows & Columns là 2 biến nhập vào từ bàn phím
inputElement ((int *)mang, Rows, Columns);
...
}
Em không hiểu cách này lắm. Tại sao khi gọi hàm thì phải (int *)mang ?
Và sư huynh nào có những cách khác thì chỉ giáo với ạ! Em cảm ơn.
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?