2010-09-08 11 views

cevap

14

İlk deyimi dizesi olarak argüman davranır ve Int içine değerini dönüştürür karakteri 1

ASCII değerini döndürüyor, ikincisi char olarak argüman davranır ve ASCII değerini verir

2

'1' kodu (char)49 ile aynıdır (çünkü 1 karakterinin Unicode kod noktası 49'tır). Ve Convert.ToInt32(char), bu karakterin kod noktasını int olarak döndürür.

1

Diğerlerinin işaret ettiği gibi: İkinci örneğinizde ('1') bir char literal kullanıyorsunuz. Bir char sayısal bir türüdür. Dize örneğinde olduğu gibi ("1") bir ayrıştırma yoktur, çünkü zaten bir sayıdır - daha geniş bir sayı biçimine (16 bit'den 32 bite) bir döküm.

2

Diğerleri dediği gibi, Convert ASCII kodunu döndürür. Eğer O davranır

int val = Convert.ToInt32('1'.ToString()); 
+0

Awesome :) :) :) :) – Aravin

1

'1' onun ASCII eşdeğer dönmek yüzden herhangi char char ve int form, ASCII eşdeğer olarak kullanmalıdır 1 (int) için '1' dönüştürmek istiyorsanız. Ancak "1" durumunda, onu dize olarak ele alır ve tamsayıya dönüştürür.

İlgili konular