C++ 函数转置的未定义引用
我将矩阵相乘,并将未定义的引用抛出函数转置(…) 请告诉我哪里错了。 我知道我的代码乱七八糟,但我正在准备期中考试,这就是为什么我在赶时间,继续编辑同一个文件,也许这就是为什么我找不到错误 这是我的密码:C++ 函数转置的未定义引用,c++,C++,我将矩阵相乘,并将未定义的引用抛出函数转置(…) 请告诉我哪里错了。 我知道我的代码乱七八糟,但我正在准备期中考试,这就是为什么我在赶时间,继续编辑同一个文件,也许这就是为什么我找不到错误 这是我的密码: #include<iostream> #include<fstream> using namespace std; void transpose(int arr[][10],int trans[][10],int ar[][1],int,in
#include<iostream>
#include<fstream>
using namespace std;
void transpose(int arr[][10],int trans[][10],int ar[][1],int,int);
void output(int,int);
int main()
{
int array[10][10]={0};
int trans[10][10]={0};
int array5[3][1]={4,5,6};
ifstream input("matrix.txt");
int rows=0,col=0,num=0;
char ch;
int x=0,z=0;
//Finding Numbers of rows and columns
for(col=0;ch!='\n';col++)
{
input>>array[0][col];
input.get(ch);
}
input.close();
ifstream input1("matrix.txt");
while(!input1.eof())
{
input1>>array[z][x];
input1.get(ch);
if(ch=='\n')
{
rows++;
z++;
}
x++;
}
rows=rows+1;
cout<<"Oye"<<rows<<" "<<col<<endl;;
input.close();
ifstream srch("matrix.txt");
for(int r=0;r<rows;r++)
{
for(int c=0;c<col;c++)
{
srch>>array[r][c];
cout<<array[r][c]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
cout<<"=================================================" <<endl;
transpose(array,trans,array5,rows,col);
input.close();
}
void transpose(int arr[][10],int trans[][10],int ar[][10],int row,int col)
{
int x=0,y=0,flag=0,row1=0,j=0;
for(row1=0;row1<row;row1++)
{
trans[row][j]=0;
for(j=0;j<col;j++)
{
for(int k=0;k<col;k++)
trans[row][j]=trans[row][j]+(arr[row1][j]*ar[k][j]);
}
}
for(int r=0;r<row;r++)
{
for(int c=0;c<col;c++)
{
cout<<trans[r][c]<<" ";
}
cout<<endl;
}
}
#包括
#包括
使用名称空间std;
无效转置(int-arr[][10],int-trans[][10],int-ar[][1],int,int);
无效输出(int,int);
int main()
{
int数组[10][10]={0};
int trans[10][10]={0};
int-array5[3][1]={4,5,6};
ifstream输入(“matrix.txt”);
int rows=0,col=0,num=0;
char ch;
int x=0,z=0;
//查找行数和列数
for(col=0;ch!='\n';col++)
{
输入>>数组[0][col];
输入。获取(ch);
}
input.close();
ifstream input1(“matrix.txt”);
而(!input1.eof())
{
input1>>数组[z][x];
输入1.get(ch);
如果(ch='\n')
{
行++;
z++;
}
x++;
}
行=行+1;
cout函数原型不匹配
void transpose(int arr[][10],int trans[][10],int ar[][1],int,int);
void transpose(int arr[][10],int trans[][10],int ar[][10],int row,int col)
^^
为什么要编写int-array5[3][1]={4,5,6};
?只需将其设置为int-array5[3]={4,5,6};
,函数如下所示:
void transpose(int arr[][10],int trans[][10],int ar[],int row,int col);
试着把整个transpose
函数放在主函数上面。除了一些其他错误外,它对我来说是这样编译的。因为我只是作为一个简单的例子来尝试。稍后我将把这个1D数组变成2D数组。顺便说一句,谢谢你的回答。