Pulse 0 Denunciar post Postado Maio 15, 2015 Eu tenho uma função que retorna um inteiro e eu uso esse inteiro na função principal. O problema é que estava ocorrendo um erro na função principal, a matriz que eu preencho a partir de um arquivo temporário tava guardando lixo de memória. Fui investigar e percebi que a variável responsável por guardar o valor retornado pela função quadro1 tá mudando de valor durante a execução da função principal, fiz print dela em várias partes da função principal e percebi isso. Já olhei várias vezes o código, quando eu deixo o valor da matriz fixo e não baseio ele no valor retornado de quadro1 dá tudo certo... Código: http://freetexthost.com/zlm4x1oy1y (tive que colocar em outro site pq tava grande e ia bagunçar aqui) ARQUIVO TEMPORÁRIO GERADO PELA FUNÇÃO QUADRO1 E USADO NA FUNÇÃO PRINCIPAL: 18 7 17 2 4 6 0 15 0 20 2 11 2 2 4 3 7 1 0 8 6 Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Maio 15, 2015 Olha uma das faltas de atenção aqui... arq_entrada = fopen("entrada.txt", "r"); if (!arq_entrada) { printf("ERRO: %s", strerror(errno)); } fscanf(arq_entrada, "%d", &npais); Se o retorno do fopen for NULL, o programa vai continuar lendo o arquivo que deu pau na hora de abrir. Você precisa sair da função ou parar a execução do programa.Eu não consigo entender o que esse programa faz. O que existe em entrada.txt? O que vai em temporario.txt? Cadê o valor da variável k? Compartilhar este post Link para o post Compartilhar em outros sites