Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
GBIT
11 / 11 / 1
Регистрация: 05.10.2011
Сообщений: 219
#1

Ошибка (записывается код символа, а не сам символ) - C++

18.12.2012, 06:49. Просмотров 340. Ответов 1
Метки нет (Все метки)

есть строка символов (принял из EditBox)

C++
1
2
3
4
CString str;
const char *strС;
 
strС=(const char*) str;
нужно число преобразовать в float или double

функций по переводу я не нашел - решил заморочиться написать свою. (округляю до 3 чисел после запятой)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
float CtoF(const char *strT)
{
    float   tmp,result;
    int     i=0,j,k;
 
    result=atoi(strT);                     // тут мы в result запишем целую часть числа
 
    while(strT[i]!='.')                      // двигаемся по строке к дробной части числа
    {
        i++;
    }
    i++;
    for(k=1;i<5;i++,k++)                 // этот цикл допишет нам во result дробную часть
    {
        tmp=strT[i];                      ///// и вот тут проблема. из строки strT в tmp записывается код символа а не сам символ. :(
        for(j=0;j<k;j++)
            tmp*=0.1;
        result+=tmp;
    }
 
    return result;
}
там можно конечно дописать -48 но тогда появляются проблемы если дробная часть содержит 0 (ведь у него код символа = 0)

итак:
вопрос0: как записать в float число (символ) из char *. а не код символа
вопрос1: как char * строку записать в float или double. (всяко есть функции)

Добавлено через 3 минуты
ой
atof

все забыли
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2012, 06:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка (записывается код символа, а не сам символ) (C++):

Записываю в массив символ, а записывается его АСКИ код..как быть? - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; int fun(int des,int sist) { des/=sist; return des; } int konv(int des,int sist,int p) ...

Неправильно записывается символ в файл - C++
ПОМОГИТЕ КТО ЧЕМ МОЖЕТ!!! Зашифровал значит текст.Дальше его расшифровую.Расшифровал Получил ASCII код символа.Пишу что-то типа: int...

Пользователь вводит целое число n и ДВА символа. Программа выводит на экран последовательно символ №1 и символ - C++
Пользователь вводит целое число n и ДВА символа. Программа выводит на экран последовательно символ №1 и символ №2 n-раз. ...

В файл записывается мусор. Подкорректировать код - C++
Нужна помощь! В общем организована БД со структурами и целый перечень функций, которые её обслуживают. Всё работало, но что как-то...

Код символа в число символа - C++
Подскажите плиз кто знает, каким способом можно присвоить переменной short bit = 0; значение символа под кодом (код в HEX) char symbol =...

Символ кириллицы распознается как 2 символа - C++
В цикле do while при вводе символа латиницы все работает нормально, а ввод символа кириллицы запускает цикл 2 раза. Так ведь не должно...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
LValue
11 / 11 / 0
Регистрация: 27.11.2011
Сообщений: 49
18.12.2012, 09:41 #2
Для пользы дела, что бы научиться писать и анализировать работу со строками и числами, я бы рекомендовал свою функцию написать. Пригодятся полученные знания и опыт.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2012, 09:41
Привет! Вот еще темы с ответами:

Дана строка А и символ s. Удалить из строки символы, размещенные в символа s - C++
Дана строка А и символ s. Удалить из строки символы, размещенные до символа s. как при с помощью string это сделать, помогите пожалуйста.

Заменить все вхождения первого символа в массив на второй символ - C++
Задан символьный массив и два символа. Замените все вхождения первого символа в массив на второй символ. Нужно до пятницы. Заранее спасибо.

Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S - C++
Обработка символьных массивов с помощью указателей: Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S Для...

Код выводит сам себя - C++
Как сделать так, чтобы прога выводила свой код. Т.е саму себя


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru