а что тут понимать? Переменной i присваивается значение переменной start структуры argument которая при этом приводится к типу StartsEnds и переменная i сравнивается c переменной end, все той же структуры...
Почитайте что нить по C/C++ большинство ваших вопросов отпадут, так же создавайте темы соответствующие содержимому, иначе начну выдавать предупреждения!