­
­

dmzlj -

топ 100 блогов dmzlj03.01.2010 по мотивам вот этого и, особенно, вот этого


VM_WORD beepvm__api_strlen(void *vm, VM_WORD *s)
{
    return *s;
}


причем, когда мне надо таскать эту строку между сишным кодом и beepvm --- я просто выделяю чуть больше, и в конец присобачиваю-таки '\x00'. Что бы избежать лишнего копирования-выделения памяти.



Давно хотел разразиться, да все не складывалось. Тот, кто изобрел nul-терминированную строку, постебался над индустрией на десятки лет. Даже круче того чувака (Хоар?) который считает, что это он один изобрел NULL.

Причем, вообще неясно, что послужило причиной такого "дизайна". Экономия чего? Памяти? Много наэкономили, особенно с учетом выравнивания? Избежали ограничения на размер строки? А что, там где экономия лишнего слова / байта на хранение размера существенна, есть столько памяти, что бы хранить строки неограниченных размеров? Да и где строки (именно строки) такого размера имели смысл и для чего? Всегда для больших массивов применялись другие структуры данных. Редко даже строка превышала 256 байт, так что вместо '\x00' можно было бы хранить тупо длину.

Следующий ненависти пост --- про архитектуры, позволяющие доступ к невыровненным данным.

Оставить комментарий

Архив записей в блогах:
...
на Сотби П. Синьяк П. Гоген ...
«Юность» Джон Макафи не просто человек со странным семейным анамнезом. Это было бы половиной беды. Тут всё гораздо хуже. Он, будучи 53-летним человеком, начал направо и налево раздавать интервью, красной витой парой в которых проходили две мысли: 1) я всегда был проблемным ...
Мы сегодня с детьми прятали и искали клады в Мюнхене. Какие тут роскошные парки и великолепные детские площадки, о! Это тема для отдельного разговора. Но я-то наблюдала в очередной раз такой феномен: мы идём достаточно долго и далеко, дети устают, ...
Я с нетерпением ждал, когда будет запущена новая система городского транспорта - Московское Центральное Кольцо (МЦК) и вот вчера это эпохальное событие произошло. Сегодня я, как и многие москвичи, отправился кататься на новом транспорте, но не просто так, а с гидом. МКЦ ( ...