为什么在下面的c语句中,num值可以更改

为什么在下面的c语句中,num值可以更改,c,string,types,type-conversion,integer,C,String,Types,Type Conversion,Integer,当num在此语句之前为偶数时,num在上述语句之后变为48。 当num在此语句之前为奇数时,num在上述语句之后变为49。result[0]=(num%base)+“0” '0'的ASCII码是48。如果您的数字id为偶数且base==2则num%base的结果将为零48+0==48。如果您的数字为奇数且base==2则num%base的结果为148+1==49。ASCII中的49是'1' 结果[0]=(基数百分比)+“0” '0'的ASCII码是48。如果您的数字id为偶数且base==2则n

当num在此语句之前为偶数时,num在上述语句之后变为48。 当num在此语句之前为奇数时,num在上述语句之后变为49。

result[0]=(num%base)+“0”

'0'
的ASCII码是48。如果您的数字id为偶数且
base==2
num%base
的结果将为零<代码>48+0==48
。如果您的数字为奇数且
base==2
num%base
的结果为
1
<代码>48+1==49。ASCII中的49是
'1'

结果[0]=(基数百分比)+“0”

'0'
的ASCII码是48。如果您的数字id为偶数且
base==2
num%base
的结果将为零<代码>48+0==48
。如果您的数字为奇数且
base==2
num%base
的结果为
1
<代码>48+1==49。ASCII中的49是
'1'


首先使用正确的数组索引。您必须使用
0
0而不是
o
0
的第二个ASCII码是48。如果
base==2
结果为48(如果num为偶数),则结果为49(如果num为奇数)。说明如何确定
num的值。你认为“num值可以更改”是什么?你凭什么认为会发生这种事?我打赌如果
num
where
const
代码也会以同样的方式工作,您是否尝试过?首先使用正确的数组索引。您必须使用
0
0而不是
o
0
的第二个ASCII码是48。如果
base==2
结果为48(如果num为偶数),则结果为49(如果num为奇数)。说明如何确定
num的值。你认为“num值可以更改”是什么?你凭什么认为会发生这种事?我打赌如果
num
where
const
代码也会以同样的方式工作,你试过了吗?
result[0] = (num % base) + '0';