> -- rus.24bb.ru писал(а):
> PROCEDURE Identifier(VAR sym: BYTE);		VAR i: SHORTINT;	BEGIN i := 0;		REPEAT			name[i] := ch; INC(i); DevCPM.Get(ch)		UNTIL ~National.IsIdentChar(ch) OR (i = MaxIdLen);		IF i = MaxIdLen THEN err(240); DEC(i) END ;		name[i] := 0X; sym := ident	END Identifier;--------------------(Скорее всего - считывается идентификатор.)Честно говоря ничего не понял?? что делает эта процедура??
Заполняет из источника букафф некую строку до максимальной длины MaxIdLen и пока это - разрешённая для идентификаторов буква.
Если длина идентификатора больше предопределённого реализацией (MaxIdLen), то он обрезается до этой длины (с фиксацией ошибки где-то).
Результат возвращается в sym
Внешний name скорее всего или статически объявленный или где-то заранее NEWed...