如何在C ++中找到整数的长度?

时间:2019-04-08 10:27:29

标签: c++ arrays

我尝试使用以下方法对每个数字进行分区,但是在某些情况下不起作用。 例如,数字00123应该返回长度5,而不是输出3 有解决方案吗?

#include<stdio.h>
void main()
{

int n,count=0;
scanf("%d",&n);
while(n!=0)
{
 n/=10;
 ++count;
}
printf("%d",count);
}

1 个答案:

答案 0 :(得分:1)

您不能将“ 00123”存储为int-因为前导零将被忽略。因此,要保留,您将必须存储为string

std::string my_int_str = "00123";

然后打印长度很简单:

std::cout << my_int_str.length();