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

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

Войти
Регистрация
Восстановить пароль
 
Adler
78 / 78 / 3
Регистрация: 07.05.2009
Сообщений: 316
#1

Инициализация массива - C++

01.10.2009, 12:50. Просмотров 1137. Ответов 3
Метки нет (Все метки)

Здравствуйте!
хм... сначала написал так.
C++
1
POINT p[4]={00,00,10,10,10,10,10,10};
потом подумал, решил написать так.
C++
1
POINT p[4]={(00,00),(10,10),(10,10),(10,10)};
потом так. Ыы
C++
1
POINT p[4]={(00,(00,10),10),(10,(10),(10),10)};
И наконец вот так.
C++
1
POINT p[4]={{00,00},{10,10},{10,10},{10,10}};
Ну понятно, что последний вариант правильный. А вот что делают предыдущие). Неужели он подумал что весь этот набор цифр первый элемент, а остальное не указано?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2009, 12:50     Инициализация массива
Посмотрите здесь:

Инициализация массива объектов - C++
Уважаемые программисты, проясните ситуацию. Имеется класс CPt (точка), причем конструктор по умолчанию отсутствует. Объявление...

Инициализация динамического массива - C++
Прога генерирует случайные числа(1-100) выводит их, пока не встретится 98, сохраняя все в массиве. Но мне нужно очень, чтобы программа сама...

Инициализация массива в классе - C++
class matrix { int arr; ...... public: .............. void set_a(int input, int i, int j){arr=input;}; //тут ошибка };

Инициализация динамического массива - C++
int main() { int a, i = 0; int *array = new int ; std::cout << "Enter numbers " << std::endl; while(std::cin >> a) { i <...

Инициализация массива в классе - C++
OS: WinXP Compiler: VC++ 6.0 Извиняюсь, заранее за глупый вопрос, но тем не менее: Есть класс: class Table{ public: ...

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

Инициализация статического массива - C++
Добрый вечер! Допустим, что имеется класс class A { .... public: static int array; .... }; Как инициализировать массив в...

Инициализация двумерного массива - C++
Чет не понимаю на что возмущается компилятор... Заполняю как и заполнял раньше... char my_array; int x = 0; int t = 2; for(; x < 2;...

Инициализация массива в конструкторе - C++
Здравствуйте, я хотел бы узнать, возможна ли инициализация массива в конструкторе без использования циклов? Вот пример конструктора ...

Инициализация массива интервалом - C++
Доброго времени суток! Подскажите пожалуйста, как присвоить массиву интервал значений (диапазон) Например: int array1 = {100...1000}. В...

Инициализация Динамического массива - C++
Друзья просмотрите пожалуйста мой динамический массив правильно ли я его длясебястолковал #include<iostream> using namespace std; ...

Инициализация символьного массива - C++
Проблема в том, что выдает ошибку "требуется выражение" - непосредственно внутри конструктора при попытке присвоить символьному массиву...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
01.10.2009, 13:09     Инициализация массива #2
Странно что ты сам этого не сделал, вот смотри как инициализировались поинты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <windows.h>
#include <stdio.h>
#include <conio.h>
 
void main()
{
    POINT p1[4]={00,00,10,10,10,10,10,10};
    POINT p2[4]={(00,00),(10,10),(10,10),(10,10)};
    POINT p3[4]={(00,(00,10),10),(10,(10),(10),10)};
    POINT p4[4]={{00,00},{10,10},{10,10},{10,10}};
 
    for(int i = 0; i < 4; i++)
    {
        printf("p1[%d] x : %d y : %d\r\n",i,p1[i].x,p1[i].y);
        printf("p2[%d] x : %d y : %d\r\n",i,p2[i].x,p2[i].y);
        printf("p3[%d] x : %d y : %d\r\n",i,p3[i].x,p3[i].y);
        printf("p4[%d] x : %d y : %d\r\n",i,p4[i].x,p4[i].y);
        printf("\r\n");
    }
    getch();
}
Миниатюры
Инициализация массива  
o-user
245 / 202 / 7
Регистрация: 03.02.2009
Сообщений: 788
01.10.2009, 13:10     Инициализация массива #3
А какой у Вас C++ ?

Массив же можно инициализировать любым образом - внутренние скобки не играют роли!
Adler
78 / 78 / 3
Регистрация: 07.05.2009
Сообщений: 316
01.10.2009, 13:31  [ТС]     Инициализация массива #4
Вот затестил.
p1[0] 1 2
p2[0] 2 4
p3[0] 4 8
p4[0] 1 2

p1[1] 3 4
p2[1] 6 8
p3[1] 0 0
p4[1] 3 4

p1[2] 5 6
p2[2] 0 0
p3[2] 0 0
p4[2] 5 6

p1[3] 7 8
p2[3] 0 0
p3[3] 0 0
p4[3] 7 8
код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <windows.h>
#include <stdio.h>
#include <conio.h>
 
int main()
{
        POINT p1[4]={1,2,3,4,5,6,7,8};
        POINT p2[4]={(1,2),(3,4),(5,6),(7,8)};
        POINT p3[4]={(1,(2,3),4),(5,(6),(7),8)};
        POINT p4[4]={{1,2},{3,4},{5,6},{7,8}};
 
        for(int i = 0; i < 4; i++)
        {
                printf("p1[%d] %d %d\r\n",i,p1[i].x,p1[i].y);
                printf("p2[%d] %d %d\r\n",i,p2[i].x,p2[i].y);
                printf("p3[%d] %d %d\r\n",i,p3[i].x,p3[i].y);
                printf("p4[%d] %d %d\r\n",i,p4[i].x,p4[i].y);
                printf("\r\n");
        }
        getch();
    return 0;
}
ps: gcc
Yandex
Объявления
01.10.2009, 13:31     Инициализация массива
Ответ Создать тему
Опции темы

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