а в чём проблема реализации как функции? Ведь то же самое!

Кстати, это нельзя считать ошибкой, но зачем Вы пишете, скажем,
j=j+1;

Ведь есть такой классный оператор инкремента)
j++;
Наверное, он даже где-то чуть-чуть оптимальнее. Рекомендую))