我正在寻找一个体面的单行c语句,以便在递增时将字符保持在'0'
和'9'
之间
我现在得到的是:
char c;
...
c = (((c % 48 ) + 1) % 10) + 48;
有更好的办法吗?
最佳答案
使用'0'
而不是硬编码其ASCII值。而且我喜欢c - '0'
比c % '0'
好;它更适合+ '0'
的。
c = (c - '0' + 1) % 10 + '0'
关于c - 保持字符值在0到9之间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19669728/