求教C#代码的问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 22:27:54
string str="123456";
if(str[2]%2==0)中的str[2]需要转换成int类型吗?

同意上面的答案。
str[2]='3'
C#可以自动实现ASCII字符和值之间的转换
而%运算是整型间的运算符,即'3'直接转换成十进制51.

不需要

str[2]是char型 可以进行%运算
只不过是以ascii码进行的运算

如果你要计算3%2的话需要转换
convert.ToInt(str[2])%2
如果你是要计算'3'%2的话就等同于0x33%2

可以用可以不用

因为是Char所以

if( (str[2]-'0')%2 ==0)
这样就转为数字了