简体   繁体   中英

Defining different types of numbers in C#

You can define a number in various ways in C#,

1F // a float with the value 1
1L // a long with the value 1
1D // a double with the value 1

personally I'm looking for which would a short , however to make the question a better reference for people, what are all the other post-fix's to number literals you can apply?

Type        Suffix    .NET Framework Type                  
-------------------------------------------------------------------------------------
decimal     M or m    System.Decimal
double      D or d    System.Double
float       F or f    System.Single
int         [1]       System.Int32
long        L or l    System.Int64

[1] When an integer literal has no suffix, its type is the first of these types in which its value can be represented: int, uint, long, ulong.

When an integer literal specifies only a U or u suffix, its type is the first of these types in which its value can be represnted: uint, ulong.

When an integer literal specifies only a L or l suffix, its type is the first of these types in which its value can be represnted: long, ulong.

When an integer literal specifies both a U or u and L or l suffix, its type is the first of these types in which its value can be represnted: ulong.

Integer

Suffix - Description

none - first of int, uint, long and ulong

U or u - first of uint, ulong

L or l - first of long, ulong

UL, Ul, uL, ul, LU, Lu, lU, or lu - ulong

Real

Suffix - Description

none - double

F or f - float

D or d - double

M or m - decimal

for money:

decimal mon = 1m;

for output:

string curr = String.Format("{0:C}", mon);  //output $1.00

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM