为什么return'9'-(ch-'0')可以转换字符不好意思,昨天由于时间紧促,没来得及把问题全部写上,其实原本是这样的char fun(char ch){//return '9'- (ch-'0');return ch ;}这个函数fun的功能是转换字符,比如输入0123
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/06 14:44:44
![为什么return'9'-(ch-'0')可以转换字符不好意思,昨天由于时间紧促,没来得及把问题全部写上,其实原本是这样的char fun(char ch){//return '9'- (ch-'0');return ch ;}这个函数fun的功能是转换字符,比如输入0123](/uploads/image/z/14238235-19-5.jpg?t=%E4%B8%BA%E4%BB%80%E4%B9%88return%279%27-%28ch-%270%27%29%E5%8F%AF%E4%BB%A5%E8%BD%AC%E6%8D%A2%E5%AD%97%E7%AC%A6%E4%B8%8D%E5%A5%BD%E6%84%8F%E6%80%9D%2C%E6%98%A8%E5%A4%A9%E7%94%B1%E4%BA%8E%E6%97%B6%E9%97%B4%E7%B4%A7%E4%BF%83%2C%E6%B2%A1%E6%9D%A5%E5%BE%97%E5%8F%8A%E6%8A%8A%E9%97%AE%E9%A2%98%E5%85%A8%E9%83%A8%E5%86%99%E4%B8%8A%2C%E5%85%B6%E5%AE%9E%E5%8E%9F%E6%9C%AC%E6%98%AF%E8%BF%99%E6%A0%B7%E7%9A%84char+fun%28char+ch%29%7B%2F%2Freturn+%279%27-+%28ch-%270%27%29%3Breturn+ch+%3B%7D%E8%BF%99%E4%B8%AA%E5%87%BD%E6%95%B0fun%E7%9A%84%E5%8A%9F%E8%83%BD%E6%98%AF%E8%BD%AC%E6%8D%A2%E5%AD%97%E7%AC%A6%2C%E6%AF%94%E5%A6%82%E8%BE%93%E5%85%A50123)
为什么return'9'-(ch-'0')可以转换字符不好意思,昨天由于时间紧促,没来得及把问题全部写上,其实原本是这样的char fun(char ch){//return '9'- (ch-'0');return ch ;}这个函数fun的功能是转换字符,比如输入0123
为什么return'9'-(ch-'0')可以转换字符
不好意思,昨天由于时间紧促,没来得及把问题全部写上,其实原本是这样的
char fun(char ch)
{
//
return '9'- (ch-'0');
return ch ;
}
这个函数fun的功能是转换字符,比如输入012346789可以把0和9转换,1和8转换
但是我想不通ch不是应该是输入的一串字符?为什么可以转换?
为什么return'9'-(ch-'0')可以转换字符不好意思,昨天由于时间紧促,没来得及把问题全部写上,其实原本是这样的char fun(char ch){//return '9'- (ch-'0');return ch ;}这个函数fun的功能是转换字符,比如输入0123
char和int是等价的.参数ch是一个char类型,你查ASCII码表,0-9数字的16进制是0x30-39.
所以此函数先判断是不是0-9,不是的话直接返回字母.
是0-9,就成了0x39-(? - 0x30)
正好是数字相对式的变换,0变成9,1变成8,2变成7...