Я просматривал раздел данных в исполняемом файле, сгенерированном компоновщиком msvs 2008, и увидел, что он вставляет какие-то маркеры между статическими строками const:
Я посмотрел на несколько других исполняемых файлов, и я вижу ту же картину. Фактические значения байтов отличаются, но все же вставляются между строками.
Я посмотрел на сгенерированный файл карты, и он не похож на меру выравнивания памяти (некоторые адреса заканчиваются на 0xc, что будет означать выравнивание на 4, но зачем добавлять столько нулей заполнения между ними), и даже если это так, почему это Значение будет добавлено последовательно? Какая-то защитная последовательность для обнаружения повреждения памяти или по какой-то другой причине, о которой я не знаю?
Любая обратная связь будет оценена. Спасибо!
Вы уверены, что это статические строки? Они похожи на блоки данных RTTI для меня, с читаемыми строками, являющимися именами типов, что предполагает, что другие байты являются большей информацией о типах.
Других решений пока нет …