Где определено 'for' цикла for?
Значение оператора for
определено в стандартном документе, который описывает язык. В частности, в разделах [stmt.iter] и [stmt.for].
как компилятор понимает и определяет порядок действий после того, как встретит ключевое слово for.
Компилятор не "понимает". Компилятор - это компьютерная программа. Это последовательность инструкций для компьютера. Процессор выполняет инструкции в зависимости от введенного ему ввода.
Программисты, которые реализуют компилятор, должны убедиться, что компилятор создает программу, которая ведет себя так, как указывает язык.
Если вы хотите знать,более подробно, тогда вы по существу спрашиваете, как пишутся компиляторы. Это выходит за рамки моего ответа. Вы обнаружите, что на эту тему написаны книги.