묻고 답하기
에러는 총 3개 인데.. 하나씩 해결해 보겠습니다.
Error 1 error C2144: syntax error : 'int' should be preceded by ')' c:\users\administrator\downloads\src\main.cpp 35 _23tree
Error 2 error C2660: 'sumRaggedArray' : function does not take 0 arguments c:\users\administrator\downloads\src\main.cpp 35 _23tree
Error 3 error C2059: syntax error : ')' c:\users\administrator\downloads\src\main.cpp 35 _23tree
1. 35번째 줄
sum = sumRaggedArray(int ptable,int rowarr,int row); 에서 int 를 없애야 합니다.
sum = sumRaggedArray(int ptable,int rowarr,int row);
아래처럼 되겠죠?
sum = sumRaggedArray( pTable, rowarr, row);
2. 35번째 줄
sum = sumRaggedArray(int ptable,int rowarr,int row); 에서 ptable 은 존재하지 않습니다.
이름을 확인해야 합니다.
pTable 로 변경하면 됩니다.
sum = sumRaggedArray( pTable, rowarr, row);
3. 35번째 줄
1, 2번이 해결되니 없어 지네요.^^
코드를 정리해보면
#include <iostream>
using namespace std;
int sumRaggedArray(int**,int*,int);
void main(){
int **pTable;
int row ,col,col2;
int rowco,colco;
int rowarr[10];
int sum=0;
cout<<"행의 값 입력: ";
cin>>row;
pTable = (int**)calloc(row+1,sizeof(int*));
for(rowco=0;rowco < row ; rowco++)
{
cout<<"열의 값입력 : ";
cin>>col;
pTable[rowco] = (int *)calloc(col+1, sizeof(int));
rowarr[rowco]=col;
cout<<"열저장인수 "<<rowarr[rowco]<<endl;
for(colco=0;colco < col;colco++){
cin >> col2;
pTable[rowco][colco]=col2;
cout<<"pTable["<<rowco<< "] 값"<<*pTable[rowco]<<endl;
}
}
for(rowco=0;rowco < row ; rowco++)
{
for(colco=0;colco < rowarr[rowco];colco++){
cout<<*pTable[rowco]<<" ";
pTable[rowco]++;
}
cout<<endl;
}
sum = sumRaggedArray( pTable, rowarr, row);
cout << "배열의 합" << sum<< endl;
free(pTable);
}
int sumRaggedArray(int** pptable,int *rowarr1,int row1){
int sum=0;
int i,j;
for(i=0;i<row1 ;i++)
{
for(j=0;j<rowarr1[i];j++)
{
//cout<<*ppTable[i]<<" ";
sum += *pptable[i];
pptable[i]++;
}
cout<<endl;
}
return sum;
}
▼