0

i am trying to create a function that takes an array and feeds user input into it.

#include <iostream>

using namespace std;

void take_matrix_input(int rows,int columns, int matrix[rows][columns]);

int main() {
    int xyz[2][2];
    take_matrix_input(2,2,xyz);
}

void take_matrix_input(int rows,int columns, int matrix[rows][columns]){
    for (int i = 0; i < rows ; ++i) {
        for (int j = 0; j < columns; ++j) {
            cin >> matrix[i][j];
        }
    }
}

I get the following error:

/home/jagadeesh/Documents/clion-2018.1.2/bin/cmake/bin/cmake --build /home/jagadeesh/CLionProjects/untitled/cmake-build-debug --target untitled -- -j 3
Scanning dependencies of target untitled
[ 50%] Building CXX object CMakeFiles/untitled.dir/main.cpp.o
/home/jagadeesh/CLionProjects/untitled/main.cpp:5:61: error: use of parameter outside function body before ‘]’ token
 void take_matrix_input(int rows,int columns, int matrix[rows][columns]);
                                                             ^
/home/jagadeesh/CLionProjects/untitled/main.cpp:5:70: error: use of parameter outside function body before ‘]’ token
 void take_matrix_input(int rows,int columns, int matrix[rows][columns]);
                                                                      ^
/home/jagadeesh/CLionProjects/untitled/main.cpp:12:61: error: use of parameter outside function body before ‘]’ token
 void take_matrix_input(int rows,int columns, int matrix[rows][columns]){
                                                             ^
/home/jagadeesh/CLionProjects/untitled/main.cpp:12:70: error: use of parameter outside function body before ‘]’ token
 void take_matrix_input(int rows,int columns, int matrix[rows][columns]){
                                                                      ^
/home/jagadeesh/CLionProjects/untitled/main.cpp: In function ‘void take_matrix_input(...)’:
/home/jagadeesh/CLionProjects/untitled/main.cpp:13:25: error: ‘rows’ was not declared in this scope
     for (int i = 0; i < rows ; ++i) {
                         ^~~~
/home/jagadeesh/CLionProjects/untitled/main.cpp:14:29: error: ‘columns’ was not declared in this scope
         for (int j = 0; j < columns; ++j) {
                             ^~~~~~~
/home/jagadeesh/CLionProjects/untitled/main.cpp:15:20: error: ‘matrix’ was not declared in this scope
             cin >> matrix[i][j];
                    ^~~~~~
/home/jagadeesh/CLionProjects/untitled/main.cpp:15:20: note: suggested alternative: ‘main’
             cin >> matrix[i][j];
                    ^~~~~~
                    main
make[3]: *** [CMakeFiles/untitled.dir/build.make:63: CMakeFiles/untitled.dir/main.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:68: CMakeFiles/untitled.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:80: CMakeFiles/untitled.dir/rule] Error 2
make: *** [Makefile:118: untitled] Error 2

error message is very cryptic(c++ n00b here),i don't know what i am doing wrong.any help is appreciated.

Jagadeesh Kotra
  • 125
  • 2
  • 7

0 Answers0