【发布时间】:2012-06-24 11:28:23
【问题描述】:
如何检测整数的长度?如果我有 le: int test(234567545);
我怎么知道 int 有多长?就像告诉我里面有9个数字???
*我试过了:**
char buffer_length[100];
// assign directly to a string.
sprintf(buffer_length, "%d\n", 234567545);
string sf = buffer_length;
cout <<sf.length()-1 << endl;
但必须有更简单或更干净的方法......
【问题讨论】:
-
一个想法:负数应该如何处理?
-
这里为什么需要
std::string?你可以做一个strlen(buffer_length)。您也不需要\n,因此不需要-1。 -
C 和 C++ 是不同的编程语言。一个数字没有数字,只有它的十进制表示有数字。