digit【ch-‘0’】++在c语言中是什么意思?
发布网友
发布时间:2022-04-22 13:06
我来回答
共1个回答
热心网友
时间:2023-05-05 06:57
digit[ch-'0']++; 在c语言中是一个语句。
digit 是一个一维数组, ch-'0' 得到一 个 数值,作为下标,
digit[ch-'0'] 是一个数组元素。
++ 是 后缀 ++,出了表达式后变量自增1运算, 即 让该数组元素 的值 增加 1:
digit[ch-'0']++; 就是 digit[ch-'0'] = digit[ch-'0'] + 1;
ch 是一个字符变量,例如 char ch='5'; '5' 的 ASCII 值,减去 '0' 的 ASCII 值 等于算术值 5。 ('0','5' 这些单引号括起的 叫 字符常量,数值等于该字符的ASCII 值)。
原语句就成了 digit[5] = digit[5] + 1;
程序例子:
#include <stdio.h>
int main()
{
int digit[10]={1,2,3,4,5,6,7,8,9,10};
int i;
char ch='5';
digit[ch-'0']++;
for (i=0;i<10;i++) printf("%d ",digit[i]);
return 0;
}
输出:1 2 3 4 5 7 7 8 9 10
可以看出 digit[5] 原来等于 6, 自增1后 变 7。