Si je veux utiliser un littéral décimal dans le code, j'ai vu qu'il existe le suffixe m (où m représente l'argent). Est-ce approprié pour les décimales ou y a-t-il une affectation plus générale (d signifie double, ce n'est certainement pas la bonne chose bien qu'une conversion directe soit prise en charge).
object decimalValue=2m;
Veuillez noter que j'ai pris l'assignation d'objet comme exemple, car dans le cas de ...
decimal decimalValue=2;
... il est implicitement clair que 2 doit être interprété comme décimal via le compilateur.
m semble être correct, msdn l' utilise comme exemple pour le type décimal.
char c = 'a'
utilisant des apostrophes autour du caractère.Sans suffixe, un réel numérique littéral sera un Double. Le suffixe m spécifie qu'un littéral réel numérique doit être un décimal.
Ceci est en fait important à savoir, car l'arithmétique sur les valeurs en virgule flottante (comme Double) est imprécise. Par exemple:
Ici, decimalValue contiendra en fait un Double, avec la valeur inattendue de 7,5500000000000007! Si je veux 7,55, je pourrais faire ceci:
Pour répondre à votre question de savoir s'il existe un suffixe plus général, m est le seul suffixe pour Decimal en C #. Cela pourrait représenter de l'argent comme vous l'avez mentionné, mais ils avaient utilisé autre chose que d, car il est utilisé par Double!
Lectures complémentaires: décimal (référence C #)
la source
Réponse courte à Declare Decimal en C #
O / P: 141,28
O / P: 100
Pour en savoir plus, consultez MSDN .
L'espoir aide quelqu'un.
la source