Muy buenas. Me encontraba haciendo un pequeño programa y he dado con un error que no tengo ni idea de como solucionar, llevo 24 horas dandole vueltas al tema, y no doy con la solución. Espero que podais ayudarme.
Código:
bool hayCiclos (int **matrizAdyacencia, int num_nodos)
{
bool nodosVisitados[num_nodos];
bool aristasVisitadas[num_nodos][num_nodos];
for (int i=0; i<num_nodos; i++)
nodosVisitados[i] = false;
for (int i=0; i<num_nodos; i++)
for (int j=0; j<num_nodos; j++)
aristasVisitadas[i][j] = false;
for (int i=0; i<num_nodos; i++)
if (nodosVisitados[i] == false)
if (rp(i, nodosVisitados, aristasVisitadas, matrizAdyacencia, num_nodos) == true) return true;
return false;
}
La cabecera de la función rp es la siguiente
Código:
bool rp (int i, bool *nodosVisitados, bool **aristasVisitadas, int **matrizAdyacencia, int num_nodos);
En la línea marcada en color rojo, me da el siguiente error:
Código:
cannot convert 'bool (*) [((unsigned int) ((int)num_nodos))]' to 'bool**' for argument '3' to 'bool rp(int, bool*, bool**, int**, int)'
¿Alguien puede ayudarme? Gracias.