4

セマンティクスを維持しながら値を完全に表現するために必要な最小のデータ型を選択することに慣れています。十分であることが保証されているlongときは使用しません。vsintも同じです。intshort

しかし、実数の場合、C# では一般的に使用されるdouble-- があり、対応するsingleorはありませんfloat。私はまだ を使用できますがSystem.Single、なぜ C# はdouble.

対照的に、言語キーワードshortintlongushortuint、および がありulongます。

では、これは、単精度が時代遅れである、非推奨である、または or を支持して使用されるべきではないという開発者へのシグナルdoubleですかdecimal?

(言うまでもなく、単精度には精度が低いという欠点があります。これはサイズが小さいこととのトレードオフとしてよく知られているため、ここでは取り上げません。)

editfloat : 申し訳ありませんが、C# のキーワードではないと誤解していました。しかし、それはこの質問を無意味なものにします.

4

5 に答える 5

8

floatエイリアスは.NETデータ型を表すため、System.Single安全に使用できます。

于 2013-03-06T20:43:56.373 に答える
5

実際には、単精度浮動小数点の「浮動小数点」キーワークがあります。

また、shortまたはbyteがintよりも適しているかどうかについても確信が持てません。intは通常、整数の最良の選択です。詳細については、こちらを参照してください。C#でバイトまたはshortの代わりにintを使用する必要があるのはなぜですか。

于 2013-03-06T20:46:58.217 に答える
5

C#キーワードと.NETタイプ名の間には、次の対応関係があります。

double -  System.Double
float  -  System.Single

したがって、C#には、問題の2つのタイプのそれぞれに1つのキーワードがあります。

floatC#キーワードではない印象をどのようにして得たのかわかりません。確かにそうです。

于 2013-03-06T20:44:17.360 に答える
3

デフォルトでは、特に指定がない限り、 like のリテラル2.0は自動的に a として解釈されます。これは、他の浮動小数点表現よりもdouble一貫して高い使用率に貢献する可能性があります。double補足です。

が存在しない限りsinglefloatキーワードはSystem.Single型に変換されます。

于 2013-03-06T20:45:16.927 に答える
2

C# System.Single はにエイリアスされています float

于 2013-03-06T20:45:02.350 に答える