Цитата(_Pasha @ Jan 25 2012, 13:56)

Значит, с нулём в конце надо уважительно быть , вставлять его в середину и прочие фокусы недопустимы. Кстати, утечки при освобождении строки могут быть, если для определения ее длины используется strlen(). Подробностей не помню.
Не. В делфе не так. ИМХО этот ноль - просто костыль для си-совместимости строк, которые
могут выводиться куда-то функциями (винды) с сишными аргументами. Например в Application.MessageBox(). Там и преобразование адреса сделано через PChar(name). Хотя раньше из-за этого нуля я думал что создаётся временная копия.
Этот string ещё как-то криво типизируется в 5-ой делфе. Поставил опцию H-, оно заругалось, что в компоненте тип string, а у меня в проге ShortString (хотя указан string). Далее я поменял все string в проге на AnsiString. Опять ругается, что в компоненте string, а у меня в проге AnsiString. Хотя вроде не должен.