Re[3]: Структуры на С#2
От: CaptainFlint http://flint-inc.ru/
Дата: 13.09.10 11:00
Оценка:
Здравствуйте, jhdffhg85hdgg5r, Вы писали:

J>>Так что ты прибавляешь integer не к структуре, а к адресу, т.е. просто получаешь адрес, увеличенный на k размеров структуры.


J>вот этого я и не понял

J>структуры в памяти не последовательны т.к. это не массив структур. и перед этим выделялись пo malloc(). кроме того я увеличиваю на число, а не на sizeof(tree_node*)

А что и когда выделялось — это уже другой вопрос. Если не было выделено место, просто получится указатель на невыделенную область памяти. Тут уж программист должен следить за этим (собственно, отсюда и всевозможные проблемы переполнения буфера).
Инкремент указателя на число увеличивает его именно на указанное количество размеров структур, а не байтов. Если требуется сдвинуть именно на несколько байтов, нужно сначала привести указатель к типу void*.
Почему же, ё-моё, ты нигде не пишешь «ё»?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.