Saber quantidade de casas de um inteiro!

Olá, estou com um duvida em questão de lógica…
como faço pra saber o numero de casas de um inteiro?
por exemplo:

o usuario digita: 1855

sao 4 casas, mas como faço pra saber isso? sem ser em string!
to usando c++

obrigadoo!

Bem, existe um teto para este valor digitado pelo usuário? Se houver, fica simples…divida o numero inserido por 10 elevado ao numero de casas máximo menos 1; exemplo genérico, considerando no máximo 5 casas:

t=entrada/[10^(4)]
se t < 10 ou t = 10, o numero digitado possui 5 casas decimais
t=entrada/[10^(3)]
se t < 10 ou t = 10, o numero digitado possui 4 casas decimais
t=entrada/[10^(2)]
se t < 10 ou t = 10, o numero digitado possui 3 casas decimais
t=entrada/[10^(1)]
se t < 10 ou t = 10, o numero digitado possui 2 casas decimais
t=entrada/[10^(0)]
se t < 10 ou t = 10, o numero digitado possui 1 casa decimal

Nao sei se fui muito claro…se nao fui me desculpe, já deve ser o horário rs…
Só nao sei como fazer isso em C++…mas pelo menos na lógica tentei ajudar…

abs

Em Java… depois vc traduz para C++

[code] double numero = 13223;

	int casas = 1;
	
	while((numero = numero / 10.0) > 1){
		casas++;
	}
	
	System.out.println(casas);[/code]

Muito bom…bem mais elegante!

Com int

[code] int numero = 7655;

	int casas = 1;
	
	while((numero = numero / 10) > 0){
		casas++;
	}
	
	System.out.println(casas);[/code]

Muito Bom este Raciocínio que vocês usaram.Parabéns!

Obrigado pessoal!! É sempre bom quando as pessoas gostam do nosso trabalho :smiley:

valeu pela resposta, realmente é um poco complicado enxergar
agora ficou mto claro e facil hehehe

isso é mais questão de matemática msm,
só levar na questão matematica… dei mole ;D