Olá Pessoal.
Mais um vez problemas com dlls. Dessa vez é o seguinte: eu tenho um programa escrito em C++ que quando dou como entrada um problema ele me dá uma determinada resposta. Eu transformei esse programa em uma dll, para ser lida por um programa em Java. Isso ocorre tranquilamente. Até eu entrar com um problema um pouco maior que o usual. Nesse caso o meu programa em C++ me dá uma resposta e o meu programa em Java que lê a dll me dá outra resposta, ou melhor, resposta alguma… Uma exceção é lançada e o programa termina. Estou usando EXATAMENTE os mesmos arquivos .cpp e .h para o programa e para a dll. Porque dos resultados diferentes?
Reparei uma outra coisa, mandei imprimir na tela as palavras que são capturadas de um arquivo durante a execução da dll. E no meu arquivo existem muitos >= e <=, mas em determinado momento da execução a dll passa a pegar apenas < ou apenas > ou apenas =. Porque isso está acontecendo? Como se o programa resolvesse mudar de comportamento durante a sua execução. Mas volto a lembrar que isso acontece quando dou entradas grandes e tenho que alocar matrizes do tipo 60 x 94 (o que eu penso nem ser tão grande assim).
Simplesmente não sei o que fazer. Não sei o que está acontecendo. O que era pra ser um programa que não tinha limite de tamanhos (com uma certa lógica, claro) agora está sendo limitado por um problema que eu não tenho nem noção por que está acontecendo…
Alguma idéia alguém?
Obrigado por lerem o meu post.
Abraços,