我必须向收单方服务器发送一条 ISO8583 消息,交换机希望我在整个消息之前发送带有 APDU 长度的消息,但我不知道如何发送。长度为4字节。
示例:我想发送消息(PAN-到期日期)4427680000628820 1014
标题:30353530 留言:44276800006288201014
我想通过套接字发送:30353530(00000014=十进制的20)4427680000628820(PAN)1014(Exp)
这应该给我:303535300000001444276800006288201014
其实我很喜欢这个
buf[0]=0x30
buf[1]=0x35
buf[2]=0x35
buf[3]=0x30
如何在buf[3]后面添加长度00000014?
最佳答案
您可以像处理前 4 个字节一样继续:假设您的总消息长度(在示例中为 0x00000014)存储在 32 位变量“len”中,请添加长度 header
buf[4] = (uint8_t)((len >> 24ul) & 0xFF);
buf[5] = (uint8_t)((len >> 16ul) & 0xFF);
buf[6] = (uint8_t)((len >> 8ul) & 0xFF);
buf[7] = (uint8_t)(len & 0xFF);
关于c - 如何用C语言将长度添加到字符数组缓冲区的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44757950/