上威 2015-08-22 06:44 采纳率: 0%
浏览 1441

itoa 源码里 tmp大小去33,radix限制在2~35的考虑是什么?

itoa 源码里 tmp大小去33,radix限制在2~35的考虑是什么?

char* _itoa(int value, char* string, int radix)

02.{

03. char tmp[33];

04. char* tp = tmp;

05. int i;

06. unsigned v;

07. int sign;

08. char* sp;

09. if (radix > 36 || radix <= 1)
{

11. __set_errno(EDOM);

12. return 0;

13. }

。。。。。。。

  • 写回答

1条回答 默认 最新

  • threenewbee 2015-08-22 23:44
    关注

    1进制根本不存在。1以下的进制也不存在。
    36的考虑很简单,你用0~9 A-Z去表示一个数字,最大10+26一共36个字符。
    37进制你用什么字符表示?这个说不准了。

    评论

报告相同问题?

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集