ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
7 мая
48336 Топик полностью
blackbit (13.01.2006 12:55, просмотров: 1) ответил РДимка на Ответ: Попрбовал
Ответ: 1. a.) Лучше не использовать знак подчеркивания в своих идентификаторах - их обычно используют компиляторы и можно нарваться на совпадение. Если не нужен непосредственный доступ к этим переменным их других модулей, то их лучше объявлять static. Попробуйте еще их явно инициализировать (хотя по стандарту static иницилиз. их в 0, но кто знает...). Не должны адреса совпадать, я бы еще понял, ежели у них одинаковые имена были... b.) Бывает, что мудрит отладчик. В этом случае запишите произвольное значение в CRT и проверте, оно действительно перешло в _TAPRC[1].lbyte (или еще куда) и лучше явным условием в теле самой программы. Если нет - то он выдает желаемое за действительное (то бишь адреса на самом деле не совпадают). c.) Иногда такое бывает в случае с банкированной памятью - адреса-то одинаковые, да банки разные ;). Шучу, это не ваш случай. 2. unsigned char ** pMsg - двойной указатель: "указатель на указатель на тип unsigned char". Вам же нужно вытащить из функции по pMsg не значение unsigned char,а указатель на него, причем тащить пытаетесь тоже по указателю...