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

Ошибка при выделении памяти под двумерный массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выведено изображение, нужно на нем нарисовать по фигуру (квадрат, круг) http://www.cyberforum.ru/cpp-beginners/thread20743.html
Выведено изображение, нужно на нем нарисовать по фигуру (квадрат, круг). размер и положение я должен выбрать.
C++ Создание полноценного файла Подскажите пожалуйста, вот я в интернете нашёл функцию написанную на C++, что в него надо дополнить что бы в далнейшем его компилировать в Visual C++ 6 и создать рабочее приложение? Заранее... http://www.cyberforum.ru/cpp-beginners/thread20739.html
C++ Дана строка. Подсчитать, сколько различных символов встречается в ней. Вывести их на экран.
Помогите решить задачи: 1. Найти все простые натуральные числа, не превосходящие n, двоичная запись которых представляет собой палиндром, т.е. читается одинаково слева направо и справа налево. 2....
C++ Как считать строки из файла, если там больше одной строки?
Как считать строки из файла в массив. Если в файле одна строка, то нет проблем, но если несколько, то при использовании функции fgets считывается только первая строка, если fscanf, то же самое,...
C++ Как работает программа http://www.cyberforum.ru/cpp-beginners/thread20715.html
Не могу понять, как работает эта программа (код нашёл на каком – то из сайтов): // crt_strtok.c // compile with: /W3 // In this program, a loop uses strtok // to print all the tokens (separated...
C++ Вопрос по встраиваемым функциям В книге прочитал, что если объявить функцию как inline, то код самой функции при компиляции копируется в главную программу, а в конце добавлено, что ключевое слово inline служит для компилятора... подробнее

Показать сообщение отдельно
Del_Piero_10
Smart is the new Sexy
25 / 25 / 1
Регистрация: 29.12.2008
Сообщений: 109

Ошибка при выделении памяти под двумерный массив - C++

12.01.2009, 15:25. Просмотров 4392. Ответов 2
Метки (Все метки)

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
#include <iostream>
using namespace std;
 
class array {
    int size1, size2;
    char **matr;
public:
    array(int n1, int n2);
    char &push(int i, int j);
    char get(int i, int j);
};
 
array::array(int n1, int n2)
{
    int k;
    matr = new *char[n1];
    for (k=0; k<n1; k++)
        matr[k] = new char[n2];
    size1 = n1;
    size2 = n2;
}
 
char &array::push(int i, int j)
{
    if (i<0 || i>=size1 || j<0 || j>=size2) {
        cout << "Границы массива нарушены";
        exit(1);
    }
    return matr[i][j];
}
 
char array::get(int i, int j)
{
    if (i<0 || i>=size1 || j<0 || j>=size2) {
        cout << "Границы массива нарушены";
        exit(1);
    }
    return matr[i][j];
}
 
void main() {
 
    array ob(2,3);
 
    ob.push(1,1) = 'X';
    ob.push(2,3) = 'A';
    cout << ob.get(1,1) << " " << ob.get(2,3);
}
Задача: Необходимо написать программу, которая создает безопасный двумерный массив (2x3) char'ов.

Программу вроде написал. Но выдает ошибку в строке
C++
1
matr = new *char[n1];
Почему?

Добавлено через 54 секунды
Ошибка вот такая: error C2059: syntax error : '*'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru