
brunorf
(usa Arch Linux)
Enviado em 12/04/2011 - 13:46h
Cara, não há nenhum problema com o malloc, como dito.
Acontece que realmente tem alguns erros no uso do printf.
Na linha 90,no primeiro printf, foi especificado que o segundo parâmetro deveria ser um float(%f), mas o tipo de retorno da função comprimento(Lista *) é int. Isso também aconteceu nas linhas 93 e 94, relativos a impressão do valor de retorno da função maiores(Lista *, int) e do ultimo(l)->info. Por fim, na linha 96, o problema é que também foi especificado que o segundo parâmetro deveria ser um float(%f), porém o valor de retorno da função concatena(Lista*, Lista*) é um tipo struct Lista*, ou seja, não é um número. Portanto o printf não funcionará.
O que deve ser feito é usar a função que você mesmo criou, chamada lista_imprime, em vez de printf, ficando assim:
lista_imprime(l1, l2).
Outro problema que constatei foi que você só criou uma lista, e não duas como requerido pela função lista_imprime. Além disso, quando você tentou usar a função printf com a função concatena, foi utilizado o identificador l1, que não foi declarado. o correto é somente l.
Espero ter ajudado