Префиксный инкремент в качестве аргумента метода - C#
Формулировка задачи:
Уходит в бесконечный цикл. Причем если использовать постфиксную форму то все нормально. Непонятен механизм срабатывания (ведь при префиксной форме в начале должно увеличиться значение, а потом вернуться, и соответственно наоборот).
Тут какая-то особенность при пердаче в качестве аргумента?
А тут все понятно
public static int NumberIn (string q, string word)
{
int num = 0;
for (int i = 0; i < q.Length; i++)
{
if (q.IndexOf(word, i) > 0)
{
num++;
i = q.IndexOf(word, ++i);
}
}
return num;
}int a = 5; int b = --a; int c = a++; Console.WriteLine(b+" "+c); //4 4
Решение задачи: «Префиксный инкремент в качестве аргумента метода»
textual
Листинг программы
...
for (int i = 0; i < q.Length; i++)
{
if (q.IndexOf(word, i) >= 0)
{
num++;
i = q.IndexOf(word, i++);
}
}
...