Illegal instruction: 4

Illegal instruction: 4

por Eric Lee -
Número de respostas: 3

qual o erro em fazer

imagem->nC = *altura;


no terminal aparece a mensagem


Illegal instruction: 4
 

Em resposta à Eric Lee

Re: Illegal instruction: 4

por José Coelho de Pina -

Pelo que você escreveu as suas declarações devem ser 

    Imagem *imagem;
    int *altura;

Se no seu programa altura é do tipo int e não int*,
então a atribuição deveria ser

    imagem->nC = altura;
Em resposta à José Coelho de Pina

Re: Illegal instruction: 4

por Eric Lee -

pior que ta certo...
parece que o erro ta quando eu uso o *altura depois que passa
pela funcao leMondrian 

Em resposta à Eric Lee

Re: Illegal instruction: 4

por Carlos Hitoshi Morimoto -

Oi Eric,

veja que, na função leMondrian a altura é um parâmetro de saída. Pense na função scanf, que carregaria altura pelo teclado.

Assim, no seu main, para carregar a altura você precisa fazer algo como:

int alt, larg;

leMondrian (nome, &alt, &lar, etc);

veja que é necessário o & na chamada, mas após a chamada,

basta usar alt

ht