# matrix problem

• 05-08-2010
Creatlv3
matrix problem
i am trying to make a matrix, and gradually make it more complex, currently i am running into the problem of it not actually making the matrix.

Code:

```#include <vector> #include <iostream> #include <string> #include "input.h" using namespace std; void mak_matrix(int cols,int rows); void mak_matrix(int cols,int rows) {   vector <vector<float> >matrix;   vector<float>col;     for(int i=0;i<cols;i++)   {col.push_back(0.0);}   for(int j=0;j<rows;j++)   {matrix.push_back(col);}   col.clear(); } int main() {   vector <vector<float> >matrix;   vector<float>col;   int cols=readInt("Number of columns is ",false);   int rows=readInt("Number of rows is ",false);   cout<<"done inputing data"<<endl;   void mak_matrix(int cols,int rows);   cout<<"done making matrix"<<endl;     cout<<matrix[cols][rows]<<endl;   cout<<"size of matrix"<<endl;     matrix[0][0]=3.0;   matrix[0][1]=2.0;   matrix[1][0]=1.0;   matrix[1][1]=3.0;   matrix[2][0]=4.0;   matrix[2][1]=6.0;   cout<<"done input values"<<endl;     cout<<matrix[0][0]<<" "<<matrix[0][1]<<endl;   cout<<matrix[1][0]<<" "<<matrix[1][1]<<endl;   cout<<matrix[2][0]<<" "<<matrix[2][1]<<endl;   return 0; }```
it used to get to the inputing matrix values before i had it try to check the size of the matrix, I am not accustomed with trying to do things like this, any help is appreciated.
• 05-08-2010
NeonBlack
You are making the matrix. And then throwing it away when mak_matrix() returns. You need some way to return the matrix you make into main. One possibility is to pass it in by reference.
Code:

`void mak_matrix(vector<vector<float> >& matrix, int cols, int rows)`
• 05-08-2010
Creatlv3
yea, that makes alot of sense, something which i knew, but was forgetting to use, thank you