си шарп всё равно не пойму, почему выводит 11, а не 12. объяснит кто нибудь
int k = 5;
k = k++ +k++;
Console.WriteLine(k);
я так понимаю к=5+5=10, потом 10+1=11, потом 11+1=12. а выводит 11
мне кажется, что очерёдность действий в интерпретаторе после к=5+5=10 не определена, какой инкремент первым инкриминировать и происходит просто прибавление единицы.
using System;
class ShowBits {
public static void Main() {
int k = 5;
k = k++ +k;
Console.WriteLine(k);
}
}
так тоже 11
а так десять, значит последний инкремент не работает
using System;
class ShowBits {
public static void Main() {
int k = 5;
k = k + k++;
Console.WriteLine(k);
}
}
так 5
using System;
class ShowBits {
public static void Main() {
int k = 5;
k = k++;
Console.WriteLine(k);
}
}
5
5
using System;
class ShowBits {
public static void Main() {
int k = 5, v=5;
k =k++;
v = k;
Console.WriteLine(k);
Console.WriteLine(v);
}
}