сделал функцию, убирающую нули с правой части строки (когда число double преобразуется в строку) хочу чтобы она возвращала значение в виде строки, как это правильно сделать?
| Код | char * DoubleToString(double number, const char delim) //преобразует double в char[] и обрезает нули с конца { char tmpstr[80]; sprintf_s(tmpstr,"%f",number); CleanZeros(tmpstr,delim); return tmpstr; }
void CleanZeros(char *string, const char delim) { //убирает крайние правые нули после запятой в числах, преобразованных из числа в строку int ii=0; bool trues=false; //проверяю, есть ли в строке разделитель for(ii = 0; ii < (int)strlen(string); ii++) if (string[ii]==delim) trues=true; if (trues==true) for(ii = (int)strlen(string)-1; ii>0 && string[ii]!=delim;ii--) { if (string[ii]=='0') string[ii]='\0'; else ii=0; if (string[ii-1]==delim && string[ii]=='\0') { string[ii-1]='\0'; ii=0; } } }
|
|