请问c编程中这几句话什么意思

尽量说明白一点!谢谢

uchar num[10]={'0','1','2','3','4','5','6','7','8','9'};
定义了字符串,然后后面

senddata(num[adc_result/1000]);
senddata(num[adc_result%1000/100]);
senddata(num[adc_result%100/10]);
senddata(num[adc_result%10]);

adc_result是一个10位二进制数。我不明白的是这四句函数计算出来的值是多少,以及怎么计算的。请举例说明一下,就比如adc_result是1111111111,然后就算出来是什么。万分感谢!

10位的二进制数,最大是2的10次方,也就是1024。
这个代码其实没有太大必要这么做。功能是将数字转换为对应的字符。比如 1转换为'1'
可以不用num数组,改为
senddata(adc_result/1000+'0');就可以了

这里你只要知道了除法和求余就可以理解了

  1. 除法(/):就是得到商数,注意的是如果分子定义为float类型或者double类型的话,那结果会不一样,比如(int类型)21 / 10 = 2,39 / 10 = 3;(float类型)21.0 / 10 = 2.1
  2. 求余(%):就是得到余数,比如21 % 10 = 1,39 % 10 = 9

把这两个知识点套进你的例子 1111111111中就得到了

  1. 函数一结果为:1111111111 / 1000 = 1111111;
  2. 函数二结果为:1111111111 % 1000 / 100 = 111 / 100 = 1;
  3. 函数三结果为:1111111111 % 100 / 10 = 11111111 / 10 = 1111111;
  4. 函数四结果为:1111111111 % 10 = 1;