san6
-
Постов
2 -
Зарегистрирован
-
Посещение
Никогда
Сообщения, опубликованные san6
-
-
Помогите пожалуйста разобраться, а то я чего то совсем запутался.
Суть проблемы: я ввожу число, и в соответствии с ним в программе организуются массивы, с которыми в дальнейшем ведется работа.
Пробовал так:
#include <stdio.h>
#include <termio.h>
int twqn, qu, q, *up, *down, *rows, *x;
struct termio new, delete;
int main(void)
{
printf("Введите q:\n");
scanf("%d", &q);
twqn = q * 2 -1;
up = new int[twqn];
down = new int[twqn];
rows = new int[q];
x = new int[q];
.................
delete[] up;
delete[] down;
delete[] rows;
delete[] x;
return 0;
}
и вот так:
int main(void)
{
printf("Введите q:\n");
scanf("%d", &q);
twqn = q * 2 -1;
qu = q - 1;
up = (int *)malloc(twqn *sizeof(int));
down = (int *)malloc(twqn *sizeof(int));
rows = (int *)malloc(queen *sizeof(int));
x = (int *)malloc(queen *sizeof(int));
...................................
free(up);
free(down);
free(rows);
free(x);
return 0;
}
Как в чистом С создать динамический массив
в Программирование: C / C++
Опубликовано
выдает
free(): invalid pointer 0x804a008!
free(): invalid pointer 0x804a088!
в Винде я создавал вот так, и все работало
{
int *a;
int *b;
a=new int[40];
b=new int[40];
int j=1;
int g=10;
for(int k=0;k<40;k++)
{
a[k]=j;
j++;
}
соответственно потом delete.
А в linux просто не могу отыскать синтаксис, как правильно делать