Ir para conteúdo

POWERED BY:

Arquivado

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

raf89

[Resolvido] Como transformo char em int?

Recommended Posts

Se eh em C ou C++ eu nao sei, mas a funcao atoi() converte.

e o include pra usar ela é o <stdlib.h> ou <cstdlib>

 

um pequeno exemplo

 

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   char numero[3] = "13";
   printf("Numero antes de passar pela conversao = %s",numero);\
   int num = 0;
   num = atoi(numero);
   printf("\nDepois da conversao o para inteiro = %d",num);
   printf("\nPodemos agora fazer contas com ele, %d x %d = %d\n",num,num,num*num);
   
   system("pause");
   
return(0);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa funçao atoi converte uma string inteira. Como o meu numero é de 14 digitos eu precisava de uma que que convertesse cada endereço de um vetor char em um endereço int, uma vez que o int só le até 9 numeros. se eu converter uma string inteira em um inteira nao vetor ele nao consegue exibir. É como a fiferença de toupper e strupr().

Compartilhar este post


Link para o post
Compartilhar em outros sites

O atof nao funcionou, mas eu tive a ideia de dividir a string em duas partes de 7( ja que eu descobri que tinha que ler 14 e nao 12 numeros. Ta aí parte do codigo

 

 

#include <stdio.h.>
#include <stdlib.h>
#include<ctype.h>
#include<string.h>
#include<iostream>

main()
{
	  int numero1, numero2, x, y, total_2 = 0;
	  int sequencia1[] = {5,4,3,2,9,8,7,6,5,4,3,2};
	  int sequencia2[] = {6,5,4,3,2,9,8,7,6,5,4,3,2};
	  int total = 0,divisor = 1000000;
	  char nome[14], letras1[7],letras2[7], produto3[13];
	  int i, quebrado1[7], quebrado2[7],total1[7], total2[7],produto1[6],produto2[7];
	  
	  printf("Digite o CNPJ:");
	  gets(nome);
	  for(i = 0; i < 7; i++)
			letras1[i] = nome[i];
	  for(i = 0; i < 7; i++)
			letras2[i] = nome[i + 7];
			
	  numero1 = atoi(letras1);
	  numero2 = atoi(letras2);

			printf("%d",numero1);
			printf("%d\n",numero2);
	  i = 0;
	  for( i = 0; i < 5; i++)
	  {
			quebrado1[i] = numero1 / divisor;
			quebrado2[i] = numero2 / divisor;
			numero1 = numero1 % divisor;
			numero2 = numero2 % divisor;
			divisor = divisor / 10;
	  }
	  
	  quebrado1[i] = numero1 / divisor;
	  quebrado2[i] = numero2 / divisor;
	  ++i;
	  quebrado1[i] = numero1 % divisor;
	  quebrado2[i] = numero2 % divisor;
	  
	  for( i = 0; i < 7; i++)
		   printf("%d\n",quebrado1[i]);
	  for( i = 0; i < 7; i++)
		   printf("%d\n",quebrado2[i]);
	  
	  
	  getchar();getchar();
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.