gcc を使用して Linux でコンパイルします。
これを16進数に変換したいと思います。10 これは a. 以下のコードでこれを行うことができました。
unsigned int index = 10;
char index_buff[5] = {0};
sprintf(index_buff, "0x%x", index);
data_t.un32Index = port_buff;
ただし、問題は、それを構造体に割り当てる必要があり、割り当てる必要がある要素が unsigned int 型であることです。
ただし、これは機能します。
data_t.un32index = 0xa;
ただし、サンプル コードは、文字列から unsigned int に変換しようとしていると見なされるため、機能しません。
私はこれを試しましたが、これも失敗しました
data_t.un32index = (unsigned int) *index_buff;
アドバイスありがとうございました。