>>int *cols=new int[5];//кол-во строк
>>int **b=&cols;//указатель на массив указателей cols
Это не указатель на массив указателей, это указатель на указатель на массив int-тов.
попробуй так:
Код:
int** b= new (int*[5]);
for(int i=0;i<5;i++)
b[i]=new int[5];
for(i=0;i<5;i++)
for(int j=0;j<5;j++)
b[i][j]=i*5+j;
for(i=0;i<5;i++)
{
for(int j=0;j<5;j++)
cout<<b[i][j]<<" ";
cout<<endl;
}
getch();
//не забудь удалить
for( i=0;i<5;i++)
delete[](b[i]);
delete[] b;