Cześć. Napisałem prosty program mnożący kilka liczb, które podawane są jako argumenty programu. Korzystam z NET Core 2.2.203.
Chciałbym zapytać o różnicę pomiędzy wartością liczbową z kropką i taką podaną z przecinkiem. Przykładowo jeśli uruchamiam program podając liczby z kropkami:
$ dotnet run 1.5 1
Result: 1,5
A w przypadku, gdy liczba będzie miała przecinek:
$ dotnet run 1,5 1
Result: 15
Mógłby ktoś wyjaśnić o co chodzi?
Metoda parsująca argumenty:
static double[] ParseArgs(string[] args)
{
double value = 0;
List<double> values = new List<double>();
foreach (string arg in args)
{
if (double.TryParse(arg, NumberStyles.Any, CultureInfo.InvariantCulture, out value))
{
values.Add(value);
}
}
return values.ToArray();
}
Z góry dziękuję za wszelkie wyjaśnienia.