Форум программистов, компьютерный форум, киберфорум
Наши страницы

C для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
Van111
211 / 190 / 4
Регистрация: 03.08.2011
Сообщений: 2,618
Записей в блоге: 12
#1

функция malloc в си - C (СИ)

16.05.2012, 19:24. Просмотров 1933. Ответов 0
Метки нет (Все метки)

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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
//---------------------------------------------------------------------------
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
//------------------------------------------------------------------------
 
#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
#include "alloc.h"
 
 
    #define NMAX      10    /* макс. число вершин */
        /* Функция ввода графа */
    int   VvodGraf ( int  ms [NMAX] [NMAX] ,int n)
 
      /* ms – матрица смежности */
      /* Возвращаемое значение – число вершин графа */
    {       /* число вершин графа */
        int  i, j;  /* номера вершин */
              int i1,i2;
 
 
    /* Обнуление матрицы смежности */
      for  (i=0; i<NMAX; i++)
           for (j=0; j<NMAX; j++)   ms[i][j] = 0;
      puts ("Введите последовательность ребер, ");
      puts ("завершив ввод нажатием Ctrl-Z");
 
      while (  scanf("%d %d", &i,&j) !=EOF )
 
      {
               ms[i-1][j-1] = 1;
 
 
        }
      puts ("input ok \n");
      
      return  0;
    }
 
void printf_pred_and_priem(int  ms[ NMAX] [NMAX],int j,int n)
{
   int i1,i2;
       for  (i1=0; i1<n; i1++)
           {
           printf("\n");
           for (i2=0; i2<n; i2++)
            printf("%i ",ms[i1][i2]);
        }
               puts("\n");
 
   puts("predshestviniki ");
 
   for (i1=0;i1<n;i1++)
   {
        if((ms[i1][j]!=0) && (i1!=j))
        {
            printf("%d ",i1+1);
        }
    }
 
   puts("\n potomki ");
 
   for (i1=0;i1<n;i1++)
   {
       if((ms[j][i1]!=0) && (i1!=j))
        {
            printf("%d ",i1+1);
        }
    }
    puts("\n");
     
return ;
 
}
 
int main(void)
{
 
 
   int j,n;
   int (*ms)[NMAX];
   puts (" \n Введите число вершин графа (<=10) ");
   scanf ("%d", &n);
 
   ms=(int*)malloc( n*n *sizeof(int));
   VvodGraf (ms,n);
 
 
 
   puts("введите граф? потом введите любой символ");
   scanf("%d",&j);
   printf_pred_and_priem( ms,j-1,n);
   free(ms);
   system("pause");//вот тут вылетает ошибка
 
 
 
return 0   ;
}
на систем пауза -вылетает, когда использовал статистический массив такого не было. помогите исправить

Добавлено через 3 минуты
всё разобрался ,тему можно закрыть ошибка в определении (*ms)[NMAX];
надо было сделать *ms
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2012, 19:24
Я подобрал для вас темы с готовыми решениями и ответами на вопрос функция malloc в си (C (СИ)):

Своя функция malloc - C (СИ)
В процессе написания сапера я пользовался функцией malloc для выделения памяти. Я копался в заголовочных файлах дабы найти её исходный код,...

Как работает функция malloc? - C (СИ)
Добрый день. Кто - нибудь может рассказать как работает функция malloc ? Вот набрал код создания и вывода двумерного массива, но...

Функция malloc() - найти разницу между двумя реализациями - C (СИ)
Добрый вечер. Скажите, пожалуйста, есть ли разница между записями: buf=(char*)malloc((strlen(str)*2)*sizeof(char)) и ...

В чем разница между malloc() и (char *)malloc() - C (СИ)
Прошу помочь разобраться: не могу понять в чем разница междуs=malloc(sizeof(char)); иs=(char *)malloc(sizeof(char));Буду признателен вашим...

Не работает malloc - C (СИ)
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; void create(int *x); int main() { int *x,i; create(x); printf(&quot;%p\n&quot;,x); ...

Malloc.h not found - C (СИ)
Всем привет, написал программу, но ругается &quot;malloc.h not found&quot; Вот собственно код, пишу на Xcode #include &lt;stdio.h&gt; #include...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2012, 19:24
Привет! Вот еще темы с ответами:

realloc vs (malloc + memset) - C (СИ)
На одном форуме мне сказали, что realloc работает чуть ли не в полтора раза медленнее связки malloc + memset. Вот решил проверить (и...

Уточнение по операции malloc в C - C (СИ)
Здравствуйте, вот вопрос. Операция malloc выдаёт указатель, то есть она выдаёт его с * или без. Я имею в виду, что его значением будет...

Не освобождается память от malloc - C (СИ)
wchar_t* path; wchar_t* _path = L&quot;\dasdasdaev\dfg&quot;; if(!_path) return NULL; path = (wchar_t*)malloc(wcslen(_path) +...

Заменить код на Malloc - C (СИ)
Помогите заменить код на Malloc() не могу понять! #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;ctime&gt; int main(int argc,...


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

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

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