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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 65, средняя оценка - 4.86
NetGod
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
#1

Инициализация двумерного массива - C++

11.08.2008, 23:32. Просмотров 8184. Ответов 10
Метки нет (Все метки)

Чет не понимаю на что возмущается компилятор... Заполняю как и заполнял раньше...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
char my_array[2][2]; int x = 0; int t = 2;
for(; x < 2; x++)
{
my_array[x][t] = "*";
std::cout << my_array[x][t];
}
t--; x = 0; for(; x < 1; x++)
{
my_array[x][t] = "*";
std::cout << my_array[x][t];
}
t--;
x = 0;
for(; x < 0; x++)
{
my_array[x][t] = "*";
std::cout << my_array[x][t];
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.08.2008, 23:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Инициализация двумерного массива (C++):

Инициализация двумерного массива - C++
Подскажите пожалуйста как проинициализировать двумерный массив размером 10 на 10.(самый простой пример)

Инициализация двумерного массива - C++
Учу С++ и переделываю шахматы в ооп. Не получается написать конструктор для двумерного массива. На С было: int position = { {...

Инициализация двумерного массива в классе - C++
Есть класс: class Test { int T; public: Test(); ~Test(); };

Инициализация двумерного Динамического массива - C++
У меня вопрос. Могу ли я создать двумерный динамический массив и инициализировать его своими значениями в коде программы. #include...

Инициализация двумерного динамического массива - C++
Как задать численные значения элементам двумерного динамического массива при его инициализации? int n=2; double **a; ...

Обьявление и инициализация динамического двумерного массива в классе - C++
Пытаюсь создать в классе динамический двумерный массив, не могу понять что я делаю не так( При вызове деструктора - ошибка class...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
11.08.2008, 23:38 #2
а каким именно образом он возмущается?
NetGod
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
11.08.2008, 23:40  [ТС] #3
Цитата Сообщение от Spo1ler Посмотреть сообщение
а каким именно образом он возмущается?
(25) : error C2440: '=' : cannot convert from 'const char [2]' to 'char'
Три таких ошибки
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,368
11.08.2008, 23:41 #4
Мда, месье знает толк в извращениях! А почему бы не написать просто, по рабоче-крестьянски:
Код
[SIZE=2][COLOR=#0000ff]char[/COLOR][/SIZE][SIZE=2] my_array[2][2];
[/SIZE][SIZE=2][COLOR=#0000ff]for[/COLOR][/SIZE][SIZE=2](int x = 0; x < 2; x++)[/SIZE]
    for(int t = 0; t < 2; t++)
    {
[SIZE=2]        my_array[x][t] = [/SIZE][SIZE=2][COLOR=#a31515]"*"[/COLOR][/SIZE][SIZE=2];[/SIZE]
        [SIZE=2]std::cout << my_array[x][t];[/SIZE]
    [SIZE=2]}[/SIZE]
?
Меньше буковок нажимать - клавиатура целее будет.
NetGod
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
11.08.2008, 23:43  [ТС] #5
Мне надо именно так, это не полный код, вообщем мой вопрос почему ошибка?
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
11.08.2008, 23:47 #6
вы бы сказали где там 25 строка
NetGod
93 / 2 / 0
Регистрация: 12.06.2008
Сообщений: 84
11.08.2008, 23:48  [ТС] #7
Вообщем там, где элементу массива присваивается символ "*"
Spo1ler
292 / 52 / 3
Регистрация: 22.05.2008
Сообщений: 788
11.08.2008, 23:53 #8
мне кажется, или массив надо было обьявлять как
Код
char* somevar[x][y];
XuTPbIu_MuHTAu
Эксперт С++
2224 / 739 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
11.08.2008, 23:58 #9
Проблема в двойных кавычках.Двойные кавычки задают строку,оканчивающуюся нулем. Нужно символы писать так '*'
frech
33 / 33 / 0
Регистрация: 17.07.2008
Сообщений: 553
16.08.2008, 09:44 #10
vot dva varianta kak mojna napisat kod:
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
#include <iostream.h>
using namespace std;
int main()
{
char my_array[2][2]; int x = 0; int t = 2;
for(; x < 2; x++)
{
my_array[x][t] = '*';
cout << my_array[x][t];
}
t--; x = 0; for(; x < 1; x++)
{
my_array[x][t] = '*';
cout << my_array[x][t];
}
t--;
x = 0;
for(; x < 0; x++)
{
my_array[x][t] = '*';
cout << my_array[x][t];
}
 
 
}
vot vtoroy:
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
#include <iostream.h>
using namespace std;
int main()
{
char my_array[2][2]; int x = 0; int t = 2;
for(; x < 2; x++)
{
 
cout << "*";
}
t--; x = 0; for(; x < 1; x++)
{
 
cout << "*";
}
t--;
x = 0;
for(; x < 0; x++)
{
 
cout << "*";
}
 
int m; cin>>m;
}
Просто_Юлия
133 / 45 / 2
Регистрация: 27.05.2008
Сообщений: 245
16.08.2008, 14:26 #11
А почему нельзя использовать 2 вложенных цикла?
Зачем такой изврат?
как-то так:
C++
1
2
for(int t = 0; t < 2; t++)
    for(int x = 0; x < t; x++)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2008, 14:26
Привет! Вот еще темы с ответами:

Функции двумерного массива. Транспонировать матрицу через ввод вывод функции двумерного массива. - C++
Транспонировать матрицу через ввод вывод функции двумерного массива.Сначала вывести ее,а потом провести транспонирование.

Инициализация массива - C++
Нужно объявить несколько статических строк, содержащих байты со значениями в диапазоне от 1 до 255 Пытаюсь что-то в этом духе: ...

Инициализация массива - C++
Здравствуйте! хм... сначала написал так. POINT p={00,00,10,10,10,10,10,10}; потом подумал, решил написать так. POINT...

Инициализация массива - C++
Есть массив: int d; Есть константа бесконечности (просто константа) inf, равная 2^30. Я попытался проинициализировать массив этой...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.08.2008, 14:26
Ответ Создать тему
Опции темы

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