请问如下面C语言for语句循环输出的16进制组成的一串字符如何作为一个参数传入一个参数格式为%s的子函数呢?

DES_Efun(MIN, MI, output,cs);
for (i = 0; i<64; i++)
{
zc[i%4]=output[i];
if(i%4==3)
{
x=zc[0]*8+zc[1]*4+zc[2]*2+zc[3]*1;
printf("%x",x);
}

1个回答

sprintf用过吗?

(对了最好用sprintf_n 不会写越界。)

sprintf(bufstr,"%x",x);

如果想拼接,考虑

sprintf(bufstr, "%s%x", bufstr, x);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问