C uint8_t数组和附加数据
大家好,我有这个问题我有一个uint8\t数组C uint8_t数组和附加数据,c,arrays,string,uint8t,C,Arrays,String,Uint8t,大家好,我有这个问题我有一个uint8\t数组 uint8\u t命令文本[256] 我从adc读取一些数据,我使用snprintf转换uint8\t中的数据浮点 ` float aux; uint8_t value[4]; aux=(float)(HAL_ADC_GetValue(&hadc)) snprintf(value,4,"%.0f",aux); //convert the data float to uint8_t strcat(command_Text, val
uint8\u t命令文本[256]
我从adc读取一些数据,我使用snprintf转换uint8\t中的数据浮点
` float aux;
uint8_t value[4];
aux=(float)(HAL_ADC_GetValue(&hadc))
snprintf(value,4,"%.0f",aux); //convert the data float to uint8_t
strcat(command_Text, value); //append data `
我发现类型为“uint8\u t*”的警告参数与类型为“char const”的参数不兼容*
我不知道如何将uint_8数据中的字符串manipolate,我希望读取数据e将其附加到数组中,您能帮我吗?建议如下:
uint8_t command_Text[256] = {'\0'};
....
uint8_t value[4] = {'\0'};
snprintf(value,3,"%3.3u", atoi( HAL_ADC_GetValue( &hadc ) ) );
strcat(command_Text, value); //append data
snprintf采用“char*”参数,而不是“unsigned char*”将
值声明为char[4]
对于某些嵌入式设备来说,这看起来很像。第一条规则是在可以避免的地方不要使用浮点运算。由于ADC很可能不会产生浮点结果,所以很有可能您可以在代码的其余部分使用整数,可能是模拟分数或定点运算。也就是说,您不应该使用优先级ntf
和scanf
家族,因为他们是代码膨胀的。谁曾否决过这个答案,请发表评论,解释为什么否决。