
return('0')和return(c-'0')和return(0)的区别
inttttt(){charc;c=getchar();returen(c-'0');}...
int tttt()
{
char c;
c=getchar();
returen(c-'0');
} 展开
{
char c;
c=getchar();
returen(c-'0');
} 展开
6个回答
展开全部
return('0')是返回字符'0',
return(c-'0')是返回表达式c-'0'的值,字符在计算机内是以一个整数值来存储的,都有固定的数值,被解释为字符(显示的时候是显示字符),也可以对char作算术运算,因为char也是一个数值。
return(0)是返回数值0,
其实有无括号均可,只要它不影响表达式的优先级,就当是一种风格罢了,()在表达式中多是用来改变表达式中运算符的优先级,因为()在表达式中的优先级很高。
return(c-'0')是返回表达式c-'0'的值,字符在计算机内是以一个整数值来存储的,都有固定的数值,被解释为字符(显示的时候是显示字符),也可以对char作算术运算,因为char也是一个数值。
return(0)是返回数值0,
其实有无括号均可,只要它不影响表达式的优先级,就当是一种风格罢了,()在表达式中多是用来改变表达式中运算符的优先级,因为()在表达式中的优先级很高。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,return带括号是一种奇怪的风格。
其次,'0' != 0.
第三,c - '0' 我想LZ大概能区分开。
结束。
恩加点内容,和本题无关。
下面两个不约而同的把ASCII拼错了。
'c'在C中是int型。
’c'不一定用的是ASCII码。
其次,'0' != 0.
第三,c - '0' 我想LZ大概能区分开。
结束。
恩加点内容,和本题无关。
下面两个不约而同的把ASCII拼错了。
'c'在C中是int型。
’c'不一定用的是ASCII码。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char型的字符 ‘c’ 就是一个8比特位的空间 也就是一个8位的二进制数(0-255)
各个数已经预定好都表示什么意思了,也就是assic码表,不过目前只用到0-127
‘c’在assic码表中用99来表示的,也就是二进制数:01100011
所以 ‘c’ 就是数值99
‘c’ - ‘0’ = 99 - 48 = 51 (字符‘0’ assic码表中用48来表示的)
数值0么就是0了
反正字符就是一个8位的二进制数而已,至于为什么会显示c这些字符,只不过是根据这个二进制去查已有的assic码表,然后得到的图像显示信息而已
各个数已经预定好都表示什么意思了,也就是assic码表,不过目前只用到0-127
‘c’在assic码表中用99来表示的,也就是二进制数:01100011
所以 ‘c’ 就是数值99
‘c’ - ‘0’ = 99 - 48 = 51 (字符‘0’ assic码表中用48来表示的)
数值0么就是0了
反正字符就是一个8位的二进制数而已,至于为什么会显示c这些字符,只不过是根据这个二进制去查已有的assic码表,然后得到的图像显示信息而已
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单,楼主看看这个两个字符的assic码就知道了,return ('0')即返回字符'0'的assic码48, return(c-'0')即返回c的assic码-48,即99-48 = 51。 最后return(0)就是返回值0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询