LaNgSuYaR
Power Member
Boas! É o seguinte, eu estou a implementar a recursividade numa função em que os argumentos são dois arrays bi-dimensionais e 2 coordenadas a serem aplicadas a estes. Para a função, envio os apontadores dos respectivos arrays que são do tipo char.
Como eu preciso de verificar a vizinhança de uma célula - verificar elementos num raio de 1 célula - chamo a função que criei recursivamente, com um caso de paragem, obviamente! O que acontece é que, se eu chamar apenas 4 vezes a função (i.e. para os elementos "acima" e para um lateral relativos à celula que estou a considerar) a função funciona correctamente. No entanto, se chamar 5 ou mais vezes - necessito da chamada 8 vezes para cada célula - o programa acaba em "segmentation fault". Disseram-me inclusivé que poderia ser devido a estar a apontar para um array bi-dimensional e eu lá mudei o código todo para um array uni-dimensional funcionando do mesmo modo mas obtenho o mesmo problema!
Alguém me pode esclarecer? Visto que tenho que ter o trabalho pronto em breve, e estou a "stressar" com isto!
Tnkx in advance!
Cumps!
Como eu preciso de verificar a vizinhança de uma célula - verificar elementos num raio de 1 célula - chamo a função que criei recursivamente, com um caso de paragem, obviamente! O que acontece é que, se eu chamar apenas 4 vezes a função (i.e. para os elementos "acima" e para um lateral relativos à celula que estou a considerar) a função funciona correctamente. No entanto, se chamar 5 ou mais vezes - necessito da chamada 8 vezes para cada célula - o programa acaba em "segmentation fault". Disseram-me inclusivé que poderia ser devido a estar a apontar para um array bi-dimensional e eu lá mudei o código todo para um array uni-dimensional funcionando do mesmo modo mas obtenho o mesmo problema!
Alguém me pode esclarecer? Visto que tenho que ter o trabalho pronto em breve, e estou a "stressar" com isto!
Tnkx in advance!
Cumps!