Помещение значения массива char в переменную типа float - PullRequest
0 голосов
/ 15 марта 2019

Я хочу поместить значение array в число с плавающей точкой.

main(){
    float a;
    char array[4]="12.1";
    a=atoi(array);
    printf("%f",a);
}

Когда я использую эту программу, она выдает 12.000000 в качестве вывода, но я хочу 12.100000 в качестве вывода.Заранее спасибо.

Ответы [ 3 ]

6 голосов
/ 15 марта 2019

Использование этого:

atof() - Преобразовать строку символов в число с плавающей точкой:

#include <stdlib.h>
double atof(const char *string);

Эта ссылка объясняет это.

4 голосов
/ 15 марта 2019

Суммируя ответы и комментарии, ваша программа должна выглядеть так:

int main(void) {
    float a;
    char array[]="12.1";
    a=atof(array);
    printf("%f\n",a);
}
3 голосов
/ 15 марта 2019

вместо atoi (), который преобразует массив символов в целое число, используйте atof() read здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...