答えは5のようですが、なぜそうなるのかわかりません。
どなたか流れを教えてください。よろしくお願いします。

#include
int sub(int *x, int *y) {
(*x)++;
(*y)++;
return *x + *y;
}
main() {
int a = 0, b = 0;
b = sub(&a, &a);
printf(“%d %d\n”, a, b);
}

(1) 0 2
(2) 0 3
(3) 1 3
(4) 2 3
(5) 2 4