This question already has answers here:
How can I pad an int with leading zeros when using cout << operator?
                                
                                    (6个答案)
                                
                        
                                6年前关闭。
            
                    
是的,您没看错,我正在寻找一种在小数点前增加整数精度的方法。原因是无关紧要的,将很难解释。具体来说,我想将其增加到数百个,例如:


1-> 001
7-> 007
27-> 027
358-> 358


...等等等等。

我知道有一种方法可以对此进行编程,但是我想有一种自动进行此方法的方法,对吗?就像“ setprecision()”命令一样,但是您可以看到。我已经查询了很长时间,但是之前的所有问题都只涉及小数点后的精度。

在此先感谢任何可以帮助我解决这个奇怪要求的人。

最佳答案

不久前,我写了类似的东西。

我并不是说这很完美,但您会明白的。

使用递归:

int someNumber = 235;
int number = someNumber;
int minDigits = 5;
int actualDigits = 0;

string intString = "";

int digitCount = 0;

while (number > 0)
{
    number /= 10;
    actualDigits ++;
}

intString = itoa( someNumber );

while (actualDigits < minDigits)
{
    intString = string("0") + intString;
    actualDigits++;
}


现在intString将是"00235"

关于c++ - 在C++中将小数点前的整数精度递增(例如7-> 007),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16803692/

10-11 16:58