149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
int i = 256;

*( (char*) &i ) = 1;



Чему равно значение i после этого блока?

@темы: Программизм

Комментарии
17.10.2006 в 16:19

Геолог-анархист
0x01000100 для 32х битного инт

0x0100 для 16и битного



так?
17.10.2006 в 16:31

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
баянолог

Нет;о) Ты кое-что забыл;о)
17.10.2006 в 16:32

a simple creature unlettered
Концептуально.)
17.10.2006 в 16:43

Серые крысы неистребимы!
"Я вам что, все константы помнить должен?!" (с) Бородатый анекдот ;-)
17.10.2006 в 16:51

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
Greyrat

А при чём здесь константы? Это, по большому счёту, задачка на базовое понимание стека данных.
17.10.2006 в 16:54

Геолог-анархист
посмотрел правильный ответ =) ишшу, что же забыл.
17.10.2006 в 18:30

απλά μια άλκη
i = 0x0100

Манипуцляции с указателем портят до 0x0101, то бишь 257
17.10.2006 в 21:25

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
Romendakil

Правильно;о)



баянолог

По умолчанию байты внутри переменной расположены в обратном порядке, то есть поинтер указывает на младший байт.