Есть массив packet->payload, из него нужно откусить 2 байта и вывести в консоль. Значение соответсвующих байтов в массиве 0x974b. Код следующийchar trID[2];
trID[0] = packet->payload[32];
trID[1] = packet->payload[33];
printf("transactionID is: %x\n",trID[0]);
printf("transactionID is: %x\n",trID[1]);
printf("transactionID is: %x\n",trID);Результат:
transactionID is: ffffff97
transactionID is: 4b
transactionID is: bf93bfeaНикто не знает почему в последнем случае когда консоли должно появится 0х974в я получаю там 4х байтную фигню?
>Никто не знает почему в последнем случае когда консоли должно появится 0х974в
>я получаю там 4х байтную фигню?С какой стати там будет 0x97? просто trID -- это адрес!
>printf("transactionID is: %x\n",trID[0]);printf("transactionID is: %x\n", (int)(trID[0]));
и т.п.
>>printf("transactionID is: %x\n",trID[0]);
>
>printf("transactionID is: %x\n", (int)(trID[0]));
>
>и т.п.либо
printf("transactionID is: %hhx\n", trID[0]);
>[оверквотинг удален]
>printf("transactionID is: %x\n",trID[1]);
>printf("transactionID is: %x\n",trID);
>
>Результат:
>transactionID is: ffffff97
>transactionID is: 4b
>transactionID is: bf93bfea
>
>Никто не знает почему в последнем случае когда консоли должно появится 0х974в
>я получаю там 4х байтную фигню?Определи trID[2] как unsigned