Duanxx的C++学习:计算数字的位数
以前计算一个数值的位数,使用的基本上就是不停的除以10,再计数,看到底有多少位数。
今天发现可以考虑先将数字转换为字符串,然后通过string.length获得数值的位数,这样做方便的多。
string num2str1(unsigned int num) { stringstream ss; ss<<num; return ss.str(); } string num2str2(unsigned int num) { char str_[10]; sprintf_s(str_,"%d",num); string str = str_; return str; } ///<直接计算出数字的位数 unsigned int getLenOfNum1(unsigned int num) { unsigned int counter = 1; while (num/10) { counter++; num = num/10; } return counter; } ///<先转换为字符串,然后在计算位数 unsigned int getLenOfNum2(unsigned int num) { return num2str1(num).length(); }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。