LINUX.ORG.RU

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

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

Расширяемость. Выделили бы 1 байт на длину строки как в Pascal, были бы строки 255 символов. Выделили бы 2 байта, то с одной стороны кто-нибудь бы ныл, что целый байт впустую расходуется, потому что ему не нужны длинные строки, но при этом строки бы устарели с развитием компьютеров, потому что 64К символов тоже бывает мало. А 4 байта никто бы в те времена не выделил, потому что никто не знал, что будут массовые компьютеры с такими огромными объёмами памяти.

А null-terminated строки получились такие, что стандарт из прошлого века и сишные алгоритмы работы с этими строками практически без изменений могут работать даже на современных 64-битных машинах и обрабатывать строки размеров с ОЗУ.

Исправление KivApple, :

Расширяемость. Выделили бы 1 байт на длину строки как в Pascal, были бы строки 255 символов. Выделили бы 2 байта, то с одной стороны кто-нибудь бы ныл, что целый байт впустую расходуется, потому что ему не нужны длинные строки, но при этом строки бы устарели с развитием компьютеров, потому что 64К символов тоже бывает мало.

А null-terminated строки получились такие, что стандарт из прошлого века и сишные алгоритмы работы с этими строками практически без изменений могут работать даже на современных 64-битных машинах и обрабатывать строки размеров с ОЗУ.

Исправление KivApple, :

Расширяемость. Выделили бы 1 байт на длину строки как в Pascal, были би строки 255 символов. Выделили бы 2 байта, то с одной стороны кто-нибудь бы ныл, что целый байт впустую расходуется, потому что ему не нужны длинные строки, но при этом строки бы устарели с развитием компьютеров, потому что 64К символов тоже бывает мало.

А null-terminated строки получились такие, что стандарт из прошлого века и сишные алгоритмы работы с этими строками практически без изменений могут работать даже на современных 64-битных машинах и обрабатывать строки размеров с ОЗУ.

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

Расширяемость. Выделили бы 1 байт на длину строки как в Pascal, были би строки 255 символов. Выделили бы 2 байта, то с одной стороны кто-нибудь бы ныл, что целый байт впустую расходуется, потому что ему не нужны длинные строки, но при этом строки бы устарели с развитием компьютеров.

А null-terminated строки получились такие, что стандарт из прошлого века и сишные алгоритмы работы с этими строками практически без изменений могут работать даже на современных 64-битных машинах и обрабатывать строки размеров с ОЗУ.