[ C / C++ ] — начинающим: задаем вопросы

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by begin_end, 28 Apr 2015.

  1. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Пробовал написать сам:
    Code:
    #include<iostream>
    #include "stdafx.h"
    #include <stdlib.h>
    #include <stdio.h>
    #include <mpir.h>
    #include<mpirxx.h>
    #pragma comment(lib, "mpir.lib")
    using namespace std;
    int main()
    {
        for (mpf_t i = 1; i <= 10; i++)
            std::cout << i / 100000.0 << "\n";
    }
    Выдавал следующие ошибки:
    1>------ Сборка начата: проект: ConsoleApplication4, Конфигурация: Release x64 ------
    1>ConsoleApplication4.cpp
    1>ConsoleApplication4.cpp(11): error C2440: инициализация: невозможно преобразовать "int" в "mpf_t"
    1>ConsoleApplication4.cpp(11): note: Не существует преобразований в типы массивов, хотя существуют преобразования в ссылки или указатели на массивы
    1>ConsoleApplication4.cpp(11): error C2446: <=: нет преобразования "int" в "__mpf_struct *"
    1>ConsoleApplication4.cpp(11): note: Для преобразования из целого типа в указатель требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
    1>ConsoleApplication4.cpp(11): error C2105: для "++" требуется левостороннее значение
    1>ConsoleApplication4.cpp(12): error C2296: /: недопустимо, левый операнд имеет тип "mpf_t"
    1>Сборка проекта "ConsoleApplication4.vcxproj" завершена с ошибкой.
    ========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
    Я конечно приблизительно понял,что я сделал не так,однако буду признателен,если вы мне поможете
     
  2. neviens

    neviens Member

    Joined:
    9 Oct 2013
    Messages:
    82
    Likes Received:
    28
    Reputations:
    3
    Code:
    ...
    int main()
    {
       mpf_t x, y, z;
    
       mpf_set_default_prec(128);
       mpf_init(x);
       mpf_init(y);
       mpf_set_d(y, 100000.0);
       
       for(int i = 1; i <= 10; ++i)
       {
         mpf_set_si(x, i);
         mpf_div(x, x, y);
         mpf_out_str(NULL, 10, 0, x);
         puts("");
       }
    
       mpf_clear(x);
       mpf_clear(y);
       getchar();
       return 0;
    }
    
     
    Trilgon likes this.
  3. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Если не трудно,то вы не могли бы объяснить,как сделать так,что бы программа отображала эти числа полностью,а не сокращениями(0.1e-4 и т.п).
     
  4. neviens

    neviens Member

    Joined:
    9 Oct 2013
    Messages:
    82
    Likes Received:
    28
    Reputations:
    3
    Code:
    ...
        gmp_printf("%.Ff", x);
    ...
    
    А зачем по воробьям в галактике Андромеды стрелять?
    Такие вычисления обеспечивают примерно такую точность, если не выше.
     
    Trilgon likes this.
  5. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Суть не в этом,я какие бы значения не подставлял,программа всё время их в сокращённом виде показывает...
     
  6. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Я уже как только не пробовал,писать,а программа их выводит либо в сокращённом виде,либо выводит фиг пойми что
     
  7. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Читал документацию http://mpir.org/mpir-3.0.0.pdf (а если быть точным,то главу 7 стр.50) ,но пока что не нашёл решения.
     
  8. neviens

    neviens Member

    Joined:
    9 Oct 2013
    Messages:
    82
    Likes Received:
    28
    Reputations:
    3
    gmp_printf() на 69 странице.
     
    Trilgon likes this.
  9. Trilgon

    Trilgon New Member

    Joined:
    5 Jul 2017
    Messages:
    32
    Likes Received:
    0
    Reputations:
    0
    Спасибо за помощь,наконец всё получилось.
     
  10. SeaFox

    SeaFox New Member

    Joined:
    13 Oct 2017
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Доброго времени суток! У меня возникла вопрос по работе функции ShellExecute.

    Описание ситуации:
    Необходимо открыть некоторые папки в папке test (например папку 1)

    Проблема: папка открывается без проблем, !но в новом окне

    Вопрос: вопрос возможно ли открыть папку 1 в текущем окне (папке test) и если это возможно то как?
    :confused:o_O

    Code:
    ...
    int main(int argc, char** argv) {
        HWND hWnd;
        hWnd = FindWindow(NULL, _T("test"));
        if(hWnd!=NULL){
            ShellExecute(hWnd, "open", "1", NULL, NULL, SW_SHOWDEFAULT);
        }
        return 0;
    }
     
    #110 SeaFox, 3 Mar 2018
    Last edited: 3 Mar 2018
  11. binarymaster

    binarymaster Elder - Старейшина

    Joined:
    11 Dec 2010
    Messages:
    4,717
    Likes Received:
    10,195
    Reputations:
    126
    Во всяком случае точно не функцией ShellExecute. Вангую, что придётся либо с COM-интерфейсами копаться, либо с SendMessage пытаться.
     
  12. george_gh

    george_gh New Member

    Joined:
    3 May 2018
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Подскажите пожалуйста норм компилятор для винды кроме Visual studio. Мне нужен вариант поменьше, но функциональный
     
  13. binarymaster

    binarymaster Elder - Старейшина

    Joined:
    11 Dec 2010
    Messages:
    4,717
    Likes Received:
    10,195
    Reputations:
    126
    MinGW.
     
    CKAP, Jerri and george_gh like this.
  14. george_gh

    george_gh New Member

    Joined:
    3 May 2018
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Спасибо
     
  15. SadiQ228

    SadiQ228 New Member

    Joined:
    24 May 2018
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    по какой то не ведомой причине мою тему удалили без выяснений... задам тут.... как нажать на кнопку на сайте? через cURL? как надо рассуждать чтобы понять что делать?
     
  16. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    634
    Likes Received:
    246
    Reputations:
    42
    eminlayer7788 likes this.
  17. terszki

    terszki New Member

    Joined:
    1 Aug 2017
    Messages:
    9
    Likes Received:
    2
    Reputations:
    0
    std::cout также может справиться с данной задачей, просто выводите таким образом: std::cout << std::fixed << number <<...

    Кнопка сама по себе всего лишь элемент form action, который выполняет действие с определёнными данными, поэтому нужно сниффить запрос и отправлять его через curl.
     
  18. Evan

    Evan Banned

    Joined:
    19 Aug 2016
    Messages:
    78
    Likes Received:
    203
    Reputations:
    0
    33
     
    eminlayer7788 likes this.
  19. Flisk

    Flisk Member

    Joined:
    4 Aug 2010
    Messages:
    147
    Likes Received:
    8
    Reputations:
    -2
    Подскажите, как конвертировать код с плюсов в чистый Си?
    Code:
        vector< vector<uint8_t> > db1;
        map< string, vector<uint8_t> > db;
    Я немного читал про векторы, но все равно не могу понять. Как это заменить на чистом Си, не юзая какие-то либы? Выделить через malloc память? Создать какую-то структуру? Посоветуйте , куда копать..
     
  20. LEX23

    LEX23 Member

    Joined:
    8 Aug 2010
    Messages:
    9
    Likes Received:
    6
    Reputations:
    0
    Можешь посмотреть как реализован вектор и переписать на чистый Си, для выделения памяти используй malloc/calloc. Для map нужно знать алгоритмы, например, красно-черное дерево.
     
    #120 LEX23, 18 Oct 2018
    Last edited: 18 Oct 2018