[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
У меня есть проект, написанный под другой процессор на C. Переношу на MSP430. На что я натолкнулся :
typedef struct __str1 {
unsigned char ch1[ 2] ;
unsigned char ch2[ 3] ;
} str1 ;
Так вот sizeof( str1) == 6 , а не 5 !!!! Т. е. компилятор выровнял на границу 2-х байтов. А у меня все (в том числе и обмен с ЭВМ - длины запросов и ответов) построен на вычислении с помощью sizeof. Как это обойти ? А то переделывать очень долго и чревато ошибками, а программа уже отлаженная на другом процессоре и не хочется ничего менять. Может, какие-нибудь директивы или опции есть ?
E-mail: info@telesys.ru