atribuir cores

atribuir cores

por Danilo Aleixo -
Número de respostas: 4

Bom vou explicar o codigo

Inicializo a variavel "cores" como um ponteiro, aloco ela em memoria e depois atribuo valores a cores[0, 1, 2], porem quando peço pra imprimir as variaveis imprime valores aleatorios e por issu naum consigo pintar a imagem, eh algum erro no codigo?

Em resposta à Danilo Aleixo

Re: atribuir cores

por Claynon Souza -

Não sei se isso vai ajudar mas ainda assim é uma dica que eu acho importante.

Quando você sabe o tamanho do vetor que você quer convém declará-lo estaticamente com esse tamanho. No caso você precisa de um array de 3 posições basta fazer:

int cores[3];

Fazer malloc não é errado mas como envolve mais código e corre o risco de retornar NULL é recomendado usá-lo apenas quando você precisa alocar memória dinamicamente. Escrever mais código implica em ter mais chance de errar.

Em resposta à Claynon Souza

Re: atribuir cores

por Danilo Aleixo -

Obrigado Claynon pela dica, mas já havia tentado desse jeito e o codigo retornou um numero aleatorio novamente =/

Segue o codigo que usei para a depuraçao:

float *cores;

cores = mallocSafe(3 * sizeof(float))

cores[0] = 0.3; cores[1] = 0.5; cores[2] = 0.7;
printf(" %d %d %d", cores[0], cores[1], cores[2]);

e ele retorna numeros aleatorios como 0, -14455....