LINUX.ORG.RU

История изменений

Исправление redgremlin, (текущая версия) :

у Вирта нет такого запрета

Запрета так делать нет, но турбопаскалевский стринг реально же представляет из себя не packed array of char, a record len: byte; s: packed array of char; end; а работа с ним, как с packed array, является сахаром от компилятора. Почему я и говорю, что формально нарушает, неформально, конечно, на уровне программного кода,

for i:=0 to Length(s)-1 do Write(s[i]);
работает одинаково для разных реализаций.

Исходная версия redgremlin, :

у Вирта нет такого запрета

Запрета так делать нет, но турбопаскалевский стринг реально же представляет из себя не packed array of char, a record len: byte; s: packed array of char; end; а работа с ним, как с packed array, является сахаром от компилятора. Почему я и говорю, что формально нарушает, неформально, конечно, на уровне программного кода, for i:=0 to Length(s)-1 do write(s); работает одинаково для разных реализаций.