c - Float to string -


there has got easier way this. trying cast group of int , floats char combine them single char. not building string str anticipated.
written in c.

char *str_w1; char *str_w2; char *str_w3; char *str_w4; char *str_w5; char *str_w6; char *str_vbat; char *str_day; char *str_month; char *str_year; char *str_hour; char *str_minute;  sprintf(str_day, "%d", time.day);       //casting int string sprintf(str_month, "%d", time.month);   //casting int string sprintf(str_year, "%d", time.year);     //casting int string sprintf(str_hour, "%d", time.hour);     //casting int string sprintf(str_minute, "%d", time.minute); //casting int string sprintf(str_w1, "%.2f", value_w1);      //casting float string sprintf(str_w2, "%.2f", value_w2);      //casting float string sprintf(str_w3, "%.2f", value_w3);      //casting float string sprintf(str_w4, "%.2f", value_w4);      //casting float string sprintf(str_w5, "%.2f", value_w5);      //casting float string sprintf(str_w6, "%.2f", value_w6);      //casting float string  sprintf(str_vbat, "%.2f", value_vbat);  //casting float string  char *str; /* building 1 string */ strcpy (str, str_day ); strcat (str, "/"); strcat (str, str_month); strcat (str, "/"); strcat (str, str_year); strcat (str, ","); strcat (str, str_hour); strcat (str, ":"); strcat (str, str_minute); strcat (str, ","); strcat (str, str_w1); strcat (str, ","); strcat (str, str_w2); strcat (str, ","); strcat (str, str_w3); strcat (str, ","); strcat (str, str_w4); strcat (str, ","); strcat (str, str_w5); strcat (str, ","); strcat (str, str_w6); strcat (str, ","); strcat (str, str_vbat); 

you can use sprintf (or better snprintf) more single format character. removes need strcpy , strcat. also, don't forget allocate array string. if building small string, can preallocate array of fixed size , populate code this:

char s[256]; snprintf(s, sizeof s, "%d/%d/%d,%d:%d,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f",          time.day, time.month, time.year, time.hour, time.minute,          value_w1, value_w2, value_w3, value_w4, value_w5, value_w6,          value_vbat);  // proceed working s 

Comments

Popular posts from this blog

c++ - OpenCV Error: Assertion failed <scn == 3 ::scn == 4> in unknown function, -

php - render data via PDO::FETCH_FUNC vs loop -

The canvas has been tainted by cross-origin data in chrome only -