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

Преобразование типов string->double c заданной точностью*? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Принцип наименьших привилегий http://www.cyberforum.ru/cpp-beginners/thread634452.html
Вопрос такой. Как строго следовать принципу наименьших привилегий? Например: стоит ли объявлять глобальные объекты со спецификатором static, даже если используется один файл; стоит ли передавать в функции константные указатели; стоит ли возвращать константные данные из функции? и т.д. Ни разу в кодах программы не видел строгого следования этому принципу, однако в книгах говорится иное. Или же...
C++ STL Containers Допустим есть проект Как сделать вектор растущим... насколько я понимаю это надо юзать resize() function мол VectorDoubles.resize(и тут типа число элементов ) Но вопрос такой... я вот не инициализировал никакое значение в VectorDoubles и начал push_back чить его в цикле и что то он у меня не ругается... т.е. он у меня из без кого растущий получается ??? или я не догоняю какой то момент... http://www.cyberforum.ru/cpp-beginners/thread634425.html
STL Iterators C++
Допустим есть проект #ifndef ContainerTemplateFunction_hpp // Preprocessor gates #define ContainerTemplateFunction_hpp #include <list> #include <vector> #include <iostream>
C++ Перевод из кодировки UTF - 8 в ANSI
Всем привет! Пишу прогу на линухе, результаты работы вывожу в html файл. Так вот когда открываю файл для прочтения с помощью браузера там иероглифы, с помощью текстового редактора в linux то все ок. Я так понял что браузер не нравиться кодировка, конечно можно в настройках браузера изменить, но мне нужно что бы такой заморочки не было. Подскажите как мне изменить кодировку?
C++ Книги для использования оконных приложений http://www.cyberforum.ru/cpp-beginners/thread634416.html
Всем привет. Консольные приложение это хорошо, но я уже прочитал книгу, и более менее знаю азы c++. Но хотелось бы создавать уже нормальные, красивые приложения с использованием Windows Forms Application. Хочу попросить чтобы мне посоветовали литературу или сайт где есть уроки поповоду использования WFA.
C++ Разыменования указателя Добрий день подскажите пожалуйса можно ли разыменовать такое вот виражения pt->str char*pt-указатель str объект класса _bstr_t нужно получить данные которые находятся в str если сделать вот так cout<< pt->str; то я данные вижу а если вот так SetDlgItemText(IDC_EDIT1,pt->str); то в окно EDIT1 ничего не выводит может его можно разыменовать? подробнее

Показать сообщение отдельно
zitxbit
Master C/C++
87 / 739 / 75
Регистрация: 11.04.2012
Сообщений: 971
08.08.2012, 08:16     Преобразование типов string->double c заданной точностью*?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <math.h>
 
double str2f(char* str, int ps)
{
    char* sw = strchr(str,'.');
    if (sw != NULL) while (*sw != '\0') *sw++ = *(sw+1);
 
    int n = strlen(str)-1;
    int len = strlen(str)-ps >= 0 ? strlen(str)-ps : 0;
    while (n >= len && sw != NULL) 
        str[n+1] = str[n--]; str[n+1] = '.';
 
    if (str[strlen(str)-1] == '.')
    {
        str[strlen(str)+1] = str[strlen(str)];
        str[strlen(str)] = '0';
    }
 
    else if (str[0] == '.')
    {
        for (int q = strlen(str)-1; q >= 0; q--)
            str[q+1] = str[q]; str[0] = '0';
    }
 
    int r = ps;
    double dd = 0; bool b = false;
    for (int n = strlen(str)-1; n >= 0; n--)
    {
        if (str[n] == '.') { r = 0; n--; b = true; }
        if (b) dd+=(str[n] - '0') * pow(10.,r++);
        else { dd+=(str[n] - '0') * pow(10.,-r); r--; }
    }
 
    return dd;
}
 
int main()
{
    static char str[256] = "126.24";
    printf("double = %f precision = 4\n",str2f(str,4));
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/5f851f...f2bfaddee93262
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru