iso 8583以下にメッセージを詰め込もうとしています
00 2F 60 01 23 06 00 08 00 20 20 01 00 00 c0 00 
00 92 00 00 00 00 12 01 23 48 30 30 30 30 30 30 
39 53 31 30 30 30 30 30 30 30 30 30 30 30 30 35
ここで、ビットマップからビットフィールドを抽出すると、フィールド3,11,24,41,42と3フィールドが11入っているフィールドが得られました。N6 format24N3 format41,42ANS format..
パケットを送信する前に、数値形式のフィールドを関数によって BCD 形式に変更する必要があります。
enter code here
void vAscii2BCD(unsigned char *pucSrc, unsigned char *pucDst, int inSize)
{
for (; inSize > 0; inSize -= 2, pucDst++) 
{
    if(!memcmp(pucSrc, "3D", 2))
    {
        pucSrc += 2;
        *pucDst = '=';
    }
    else
    {
        *pucDst = cHexDigit_to_Nibble1(*pucSrc++) << 4;
        *pucDst |= cHexDigit_to_Nibble1(*pucSrc++);
    }
}
printf("data is %s\n\n",pucDst);
}
しかし、すべての '00' を BCD に変換しようとして、この 00 を文字列の残りの部分に追加しようとすると、失敗します..メッセージに "00" の strcat を実行すると、受信側で " 3030"
受信側でも対応するすべての 00 を受信できるように 00 をエンコードする方法を教えてください。