int i;i=0;和i=‘0';的区别

        今天在写c#,犯下了这个错误 i=‘0’时,i!=0永远成立.... 求解答i=0和i=‘0’的区别

i=0就是i=0
i='0'是i=48因为加了括号就代表它是一个字符,其值取其assic码值

i = '0'; 相当于 i = 48;
i = int.Parse('0'.ToString()); 才是 i = 0;

i='0'; i值存放的是字符‘0’的ASCII码值,肯定不=0

i=0是把整数变量i赋值数值0,i=‘0’是赋值赋值字符的0的asc码的十进制数值,查asc码表可知道你的值为多少,肯定不是0

int=i,是定义一个整型变量i,第二个是将数字0赋值给i,第三个是将字符串0的值赋值给i

定义了一个整型的变量 i,所以i只能赋予整型的常量,i=0不难理解,i=‘0’是把字符‘0’的assic码值赋给i;

0就是数值0,而‘0’是字符0,期ASCII码为48

i='0' 实际上 i 的值是字符0的assic码也就是48