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

Исходный код malloc - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Формула http://www.cyberforum.ru/cpp-beginners/thread394871.html
Ребята помогите пожалуйста, преобразовать формулу в с++ делаю так: z=(M_PI*x)*pow(sin(M_PI*y+1*M_PI/180),2)+pow((exp(x-y))*pow(sin(x*x*x* M_PI/180),2),1.0/3)*(log10(fabs(tan(x/y)))/sin(log(fabs(x)))cos(x+23) выдает ошибку
C++ C++, Turbo C 1)Дан двумерный целочисленный массив. Получить новую матрицу, в которой все отрицательные элементы заменить на "-1" ,положительные - на "+1", нулевые- без изменений. 2)Дана фраза. Определить, имеются ли в ней числа, состоящие из одной цифры. 3) Графика. Составить программу передвижения шарика по заданной линии y=x^2 4) Дан файл, состоящий из строк которые могут начинаться либо с пусских... http://www.cyberforum.ru/cpp-beginners/thread394867.html
непонятная ошибка C++
#include <iostream> using namespace std; void main() { int **a, **b, n; cin >>n; a = new int *; for (int i=0; i< n; i++) a = new int;
помогите решить задачу через <iostream.h> C++
Дана матрица размера M × N. Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений.
C++ Квадратная матрица на С++ http://www.cyberforum.ru/cpp-beginners/thread394848.html
сформировать квадратную матрицу порядка n по заданному образцу: 1 0 0 ... 0 0 n 0 2 0 ... 0 n-1 0 0 0 3 ... n-2 0 0 . . ... . . ... . 0 2 0 ... 0 n-1 0 1 0 0 ... 0 0 n Помогите))) Заранее спасибо...
C++ Нахождение наименьшего общего кратного трех натуральных чисел Функции с использованием указателей. Составить программу для нахождения наименьшего общего кратного трех натуральных чисел. с использованием указателей. подробнее

Показать сообщение отдельно
prazuber
108 / 108 / 3
Регистрация: 29.04.2010
Сообщений: 240
29.11.2011, 18:52     Исходный код malloc
Немного подебажил malloc в студии, в итоге пришел в функцию
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
__forceinline void * __cdecl _heap_alloc (size_t size)
 
{
#ifndef _WIN64
    void *pvReturn;
#endif  /* _WIN64 */
 
    if (_crtheap == 0) {
        _FF_MSGBANNER();    /* write run-time error banner */
        _NMSG_WRITE(_RT_CRT_NOTINIT);  /* write message */
        __crtExitProcess(255);  /* normally _exit(255) */
    }
 
#ifdef _WIN64
    return HeapAlloc(_crtheap, 0, size ? size : 1);
#else  /* _WIN64 */
    if (__active_heap == __SYSTEM_HEAP) {
        return HeapAlloc(_crtheap, 0, size ? size : 1);
    } else
    if ( __active_heap == __V6_HEAP ) {
        if (pvReturn = V6_HeapAlloc(size)) {
            return pvReturn;
        }
    }
#ifdef CRTDLL
    else if ( __active_heap == __V5_HEAP )
    {
        if (pvReturn = V5_HeapAlloc(size)) {
            return pvReturn;
        }
    }
#endif  /* CRTDLL */
 
    if (size == 0)
        size = 1;
 
    size = (size + BYTES_PER_PARA - 1) & ~(BYTES_PER_PARA - 1);
 
    return HeapAlloc(_crtheap, 0, size);
 
#endif  /* _WIN64 */
}
Так что да, на винде malloc сделан через HeapAlloc.
Погружение: malloc -> _nh_malloc_dbg -> _nh_malloc_dbg_impl -> _heap_alloc_dbg_impl -> _heap_alloc -> HeapAlloc
 
Текущее время: 00:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru