C: конвертировать char в float [закрыто]

Ваш метод может работать теоретически, но есть намного более простой способ.

После отправки формы успешно выполните перенаправление. Неважно, где это сделать, но он очистит $ _POST.

header('Location: http://www.example.com/form.php');

В вашем случае это звучит так, как будто вы хотите перенаправить на страницу, на которой вы уже находитесь. Добавьте URL-адрес $ _GET в URL-адрес, если вы хотите отобразить подтверждающее сообщение.

Надеюсь, что это поможет,

Tom

-3
задан Gre Gor 11 March 2019 в 14:38
поделиться

2 ответа

Вы объявляете temp как одного персонажа, которого нет. Это массив символов, поэтому он должен быть объявлен как char *temp.

0
ответ дан Ahmed Karaman 11 March 2019 в 14:38
поделиться

Я запустил это на IDEOne и обнаружил, что если я этого не сделаю #include <stdlib.h>, я получу неправильные результаты

#include <stdio.h>
//#include <stdlib.h>            // <== This line is crucial

int main(void) {
    char* temp   = "6.345e-2";
    float result = atof(temp);

    printf("%f\n", result);

    return 0;
}

с stdlib.h:

Success #stdin #stdout 0s 9424KB
0.063450

Без stdlib.h:

Success #stdin #stdout 0s 9424KB
0.000000
0
ответ дан abelenky 11 March 2019 в 14:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: