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

Проблемы при работе с динамическим распределением памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Два отрезка http://www.cyberforum.ru/cpp-beginners/thread336371.html
Добрый вечер. Напишите пожалуйста код программы на Си(не С++). Даны координаты двух отрезков х1,у1 и х2,у2, нужно найти точку пересечения этих отрезков. Как её решить я знаю, а вот как написать саму программу не знаю. Для нахождения пересечения надо составить два уравнения (x-x1)/(x2-x1)=(y-y1)/(y2-y1) и (x-x3)/(x4-x3)=(y-y3)/(y4-y3), потом найти х и у, так как прямые пересекаются, то у них...
C++ Обращение к объекту с помощью перегруженной операции У меня есть перегруженная операция (), возвращающая rvalue int Array::operator()( int a, int b ) const { if ( a < 0 || b < 0 || a >= row || b >= column ) { cerr << "\nError: one of subscriptes is out of range\n"; exit( 1 ); } else http://www.cyberforum.ru/cpp-beginners/thread336356.html
C++ Рандом с плавающей точкой, как?
Здравствуйте, как реализовать rand() или другой рандом с плавающей точкой, т.е. например чтобы он мне выводил число от 1.0 до 2.5?
Выход из программы и самопроизвольное выполнение пункта C++
При запуске программы открывается меню. Если выбрать игра, то все в норме. Если выбрать помощь, то открывается помощь и сразу в след за ней открывается игра( как так?), если выбрать третий пункт, то выводится сообщение из третьего пункта, а затем открывается игра( почему?). Почему игра открывается сама по себе всегда? Как сделать выход из программы, то есть при нажатии "3", чтобы cmd окно...
C++ Проверка на цифру http://www.cyberforum.ru/cpp-beginners/thread336311.html
Написал относительно простую консольную игру. При запуске открывается меню, и там 3 пункта. Если человек вводит "4", то появляется сообщение об ошибке( это я смог реализовать), но если ввести любой другой символ( кроме цифры), например любую букву, то программа переходит в бесконечный цикл, и программа начинает выдавать текст, который выдавать она не должна. Как сделать проверку что это именно...
C++ Помогите понять задачу в теории Не могу понять как должна и что считать задача,помогите. Дана квадратная матрица порядка n. Получить вектор Аb, где b - вектор, элементы которого вычисляются по формуле b i = 1/i^2+2 , если i- четное b i = 1/i в противном случае (i=1,..., n) подробнее

Показать сообщение отдельно
alexcoder
1438 / 652 / 86
Регистрация: 03.06.2009
Сообщений: 3,286
Завершенные тесты: 1
26.07.2011, 23:19     Проблемы при работе с динамическим распределением памяти
Я посмотрел функция, и насколько понял на входе двоичное число в виде массива, младшие значения по младшим адресам , а функция должна вывести младшие 16 разрядов числа.
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
void tau(char x1[64])
{
        char* zero;
        char    buf_t[64];
        memset(buf_t,0,16);
        int int_x1_10 = 0;
        int v=1;
        for(int num=15; num>=0; num--)
        {
                if(x1[num]=='1')
                        int_x1_10+=v;
                v*=2 ;
        }
        int_x1_10++;
        itoa(int_x1_10,buf_t,2);
                
        int temp = strlen(buf_t) ;
        int len = 15-temp;
        zero = new char [len+1];
        memset(zero,0,len + 1);
        zero[len+1] = '\0';
        int i = 0;
        for( i = 0;i<=len; i++)
                *(zero+i) = '0';
        strcat(zero,buf_t);
        delete []zero;
}
Может проще перевернуть число и все, например так:
C++
1
2
3
4
5
    char x1[64]="1010110000000000000000000000000000000000";
    char out[17]={0};
    for(int i=0;i<16;i++)
        out[15-i]=x1[i];
    cout << out;
З.Ы. Совсем запутался, если входной массив 64 символа, то почему он преобразовывается в целое с 15 индекса, не с 63?
 
Текущее время: 03:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru