Increment operators cause undefined behavior if they modify the same variable in the same sequence point (statement). For example if you call a function like this: foo(++i, ++i)
the C standard doesn't say in which order the increments should be performed, and you can't predict what will be passed to the function.
This is not the case here, so your program's semantics are well defined. That is, i and j are incremented and then their values are passed to the function.