u8 *res1;
u8 *res2;
u8 *res3;
u8 save1[4]={0};
u8 save2[4]={0};
u8 save3[4]={0};
void transfer(u8 i,u8 y,u8 z)
{ u8 add1[1]={"0"};
u8 add2[4]={"\r\n"};
u8 *ps;
ps=&add1[0];
res1=&save1[0];
sprintf((char*)res1,"%s%d","#",i);
res2=&save2[0];
sprintf((char*)res2,"%s%d"," P",y);
strcat((char*)res2,(const char*)ps);
res3=&save3[0];
sprintf((char*)res3,"%s%d"," T",z);
strcat((char*)res3,(char*)ps);
strcat((char*)res1,(char*)res2);
strcat((char*)res1,(char*)res3);
ps=&add2[0];
strcat((char*)res1,(char*)ps);
}
int main(void)
{
delay_init();
USART1_Config();
while(1)
{
transfer(0,150,50);
printf("#0 P1500 T500 \r\n");//
printf("%s",res1);
}
}我想使第二个 printf和第一个printf输出一样
运行后第一个23 30 20 50 31 35 30 30 20 54 35 30 30 0D 0A 对的
第二个 20 50 31 35 20 54 35 30 30 20 54 35 30 30 0D 0A 错的
怎么样把它们弄成一样啊?
|