Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/10/2012, 16:22
antonio715
 
Fecha de Ingreso: agosto-2012
Ubicación: Alcalá
Mensajes: 37
Antigüedad: 12 años, 3 meses
Puntos: 0
Error conversion de tipo en llamada a función con matriz

Código C++:
Ver original
  1. #include<iostream>
  2. #include<stdio.h>
  3. #include <stdlib.h>
  4.  
  5.  
  6. using namespace std;
  7. void muestra_matriz (int matriz[][10], int n)
  8. {
  9.      for (int j=0; j<n; j++)        
  10.     {
  11.         for (int i=0; i<n; i++)
  12.             cout<<matriz[i][j]<<'\t';
  13.         cout <<endl;
  14.     }
  15.      
  16.      
  17. }
  18.            
  19. int main()
  20. {
  21.     int n;
  22.    
  23.     do {cout <<"Indique el orden de la matriz cuadrada (maximo 10): ";
  24.     cin>>n;}while (n>10 || n<1);
  25.     int matriz [n][n];
  26.     cout <<"Introduzca los "<<n*n<<" valores de la matriz: ";
  27.     for (int j=0; j<n; j++)         //almacena los valores introducidos
  28.         for (int i=0; i<n; i++)
  29.             cin>>matriz[i][j];
  30.     muestra_matriz(matriz, n);
  31.     for (int j=0; j<n; j++)
  32.        
  33.     cout <<"La matriz traspuesta es: "<<endl;
  34.     for (int j=0; j<n; j++)             //muestra la matriz traspuesta
  35.     {
  36.         for (int i=0; i<n; i++)
  37.             cout<<matriz[i][j]<<'\t';
  38.         cout <<endl;
  39.     }      
  40.     system("PAUSE");
  41.     return EXIT_SUCCESS;
  42.  
  43. }

No me deja compilar y me da el siguiente error:

30 cannot convert `int (*)[((unsigned int)((int)n))]' to `int (*)[10]' for argument `1' to `void muestra_matriz(int (*)[10], int)'

no entiendo qué quiere decir, está todo en int...

Gracias por vuestros comentarios :)