为了账号安全,请及时绑定邮箱和手机立即绑定

请慕友们帮小弟详细解释一下这段代码含义是什么?感激不尽!

请慕友们帮小弟详细解释一下这段代码含义是什么?感激不尽!

C
绝地无双 2023-03-07 21:17:12
void itoa(int n,char s[]) {  static int i=0; //为什么一定要用静态变量???if(n<0) {  s[i++]='-';  n=-n;  }  if(n/10)  itoa(n/10,s);  s[i++]=(n%10+'0');  s[i]='\0';  } 
查看完整描述

2 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

      1,printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。
  2,printf()函数的调用格式为: printf("<格式化字符串>", <参量表>)。
  3,格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。要输出的的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
  4,作用:在c语言中产生格式化输出的函数(定义在 stdio.h 中),其向终端(显示器、控制台等)输出字符。

查看完整回答
反对 回复 2023-03-10
?
千巷猫影

TA贡献1829条经验 获得超7个赞

这个函数的功能是将一个int型数据n 转换成char型数据并储存到数组s中
i必须用静态变量,因为i代表着数字n的位数。这个函数是递归实现的,如果不把i设置为静态,那么每次调用i都会变成0,这样就无法保存n的每一位的数字了。所以要运用静态局部变量的性质,即只会被初始化一次。这样变量i的值就随着函数的调用而改变。

查看完整回答
反对 回复 2023-03-10
  • 2 回答
  • 0 关注
  • 155 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号