+ 3

Префикс и постфик!

Кто может нормально объяснить в чем разница этих функций?

29th May 2018, 11:34 AM
Николай
2 Antworten
+ 5
Допустим у тебя есть переменные a и b. a = 2, b = 3. Чтобы увеличить любую переменную (допустим а) надо написать префикс а++ либо постфикс ++а. ++а и а++ отличаются тем, что если мы напишем ++а + b++ программа выведет 6. Почему? Потому что префикс сначала увеличивает переменную на еденицу а затем производит вычисление, то есть сначала программа прибовляет 1 к переменной а, а затем складывает переменные а и b. Постфикс сначала производит вычесление, а затем увеличивает переменную на 1, то есть сначала складывает переменные и затем прибавляет 1 к переменной b. В конце программы переменная а = 3, b = 4.
29th May 2018, 12:18 PM
Shimon
Shimon - avatar
0
Я вообще не понял вопрос. Термины "префикс" и "постфикс" в C# я что-то не встречал. Если, как решил Simon Nikiforov, говорить про оператор инкремента "++", то при чём тут функции ? Это префиксная и постфиксная формы оператора инкремента (или декремента "--"), а не функции "префикс" и "постфикс". Если речь идёт о них, то разница сказывается в случае применения этих операторов внутри выражений. То есть префиксная форма сначала выполняет инкремент или декремент, а затем возвращает новое значение переменной для использования в выражении. А постфиксная сначала отдаёт выражению значение переменной, а уже потом меняет эту переменную. Или имелось в виду что-то другое ? https://www.sololearn.com/learn/CSharp/2590/
31st May 2018, 4:01 AM
Вадим Сухотин (Vadim Sukhotin)
Вадим Сухотин (Vadim Sukhotin) - avatar