![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Gwire |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 216 Регистрация: 7.8.2007 Где: Николаев Репутация: нет Всего: 4 |
Некоторое время мучился с авто выравниванием структур.
Методом проб было выведено, что C# по умолчанию определяет параметр максимальной длины (sizeof) и при упаковке "шагает" основываясь именно на этой длине (назовем ее Pack). IMHO абстрактно это происходит так: C# размечает память устанавливая маркеры с шагом Pack (представляю как "|") Далее располагает параметры в этой "нарезке", так чтобы параметр не был "разрезан" маркером. Если места не хватает между предыдущим параметром и маркером ("|"), то параметр размещается за маркером. На пример:
И вот возник вопрос: Как избавится от пробелов ("_")? Искал похожую тему. Нашел эту http://forum.vingrad.ru/topic-262810.html, где описывается как в руками расставит параметры. "Такой продвинутый язык и расставлять руками? Та ну..." Вывел вот такое решение:
|
||||||
|
|||||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |