преобразование строки в двойную переменную в C
Я написал следующий код .... Он должен преобразовать строку типа & quot; 88 & quot; удвоить значение 88 и распечатать его
<code>void convertType(char* value) { int i = 0; char ch; double ret = 0; while((ch = value[i] )!= '\0') { ret = ret*10 +(ch - '0'); ++i; } printf("%d",ret);//or %f..what is the control string for double? } //input string :88 </code>
Но он всегда печатает 0 ... Но когда я меняю тип ret на int ... он работает нормально ... когда тип float или double, он печатает ноль ... так почему я получаю эти неоднозначные результаты?