Ir ao conteúdo
  • Cadastre-se

Array para Numero


HPerin

Posts recomendados

Galera e o seguinte, eu tenho salvo arrays com numeros, do tipo

a[] = {1, 0, 2, 4}

E eu quero transformar esse array em um numero 'int'.

Ou seja, quero que o numero int tenha o valor de 1024...

Tentei com o seguinte codigo:


float GetNumber(char *linha) //array de numeros
{
int a, size=strlen(linha); int numero[255]; float retorno=0; int ten;
for (a=0; size>=0; a++, size--)
{
numero[a] = linha[size] * pow(10, a-2);
printf ("\n ->%d", numero[a]);
}
for ( ; a>=0; a--)
{
printf ("\n--%2.f", retorno);
retorno += numero[a];
}
return retorno;
}

Mas eu perco uma precisão enorme, tipo 1024 era capaz de ficar em 1500 e pocos...

Alguém tem uma solução?

(Os 'printf' são só pra mim me localizar enquanto estou tentando corrigir o problema, não são necessários)

Link para o comentário
Compartilhar em outros sites

Se você quer transformar um array de int de um único número int você não deveria criar uma função que retorna float e aceita como argumento um vetor de char.

E você quer mesmo criar isso ou só precisa disso? Na stdlib.h existe a função atoi() que faz exatamente isso, pega uma string com um número e retorna o inteiro escrito.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!