2017-03-15 30 views
3

F#でプロジェクトをコーディングしている間に、charをintに変換したいところまで来ました。私。私の質問があるF# - charをintに変換する

let c = '3' 
c |> int //this will however give the ascii value of 3 I believe 

、文字だけの数字を保持している場合には、文字列または別の型に文字を変換せずにint型への単一の文字を変換するための最良の方法は何ですか?

答えて

8

あなたは文字を検証してきたとは、それがASCII数字をですを知っていると仮定すると、次の操作を実行できます。

let inline charToInt c = int c - int '0' 

let c = '3' 
c |> charToInt 

Online Demo

N.b.もしintではなく最終的にfloatが必要な場合は、組み込みのメカニズムがあります。System.Char.GetNumericValue

+1

私は 'System.Char.GetNumericValue'に固執して' int'にパイプすると思います。ありがとう。 –

関連する問題