Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> инициализиревать масив указателей 
V
    Опции темы
budda074
Дата 14.7.2009, 19:46 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



Добрый день...
Нужно инициализиревать масив указателей
например массив строк: 
Код

static char *name[] = {
"Неверный месяц",
"Январь", "Февраль", "Март", "Апрель", "Май", "Июнь",
"Июль", "Август", "Сентябрь",
"Октябрь", "Ноябрь", "Декабрь"
} ;

С этим я разобрался, а вот инициализиревать масив из 13 указателей на int
не выходит никак
вот
Код

static int *tab[13]={
  {0,31,28,31,30,31,30,31,31,30,31,30,31},
  {0,31,29,31,30,31,30,31,31,30,31,30,31}
};


Буду благодарен  smile 
PM MAIL   Вверх
zim22
Дата 14.7.2009, 19:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(budda074 @  14.7.2009,  19:46 Найти цитируемый пост)
инициализиревать масив из 13 указателей на intне выходит никак

Код

int *tab[3] = { new int(10), new int(20), new int(30) };

Цитата(budda074 @  14.7.2009,  19:46 Найти цитируемый пост)
Буду благодарен

жду
***
я понял! благодарность - это заминусовать мой пост. отлично  smile 

Это сообщение отредактировал(а) zim22 - 14.7.2009, 20:23


--------------------
PM MAIL   Вверх
Gordon
Дата 14.7.2009, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 9.7.2006

Репутация: 1
Всего: 6



budda074, и если хочешь объявить многомерный массив то и пиши:

Код

int a, b, c, d, e, f;
    
int *tab1[2][3] = {{&a, &b, &c}, {&d, &e, &f}};


что-то вроде того...


--------------------

  
     
PM MAIL WWW   Вверх
budda074
Дата 14.7.2009, 20:06 (ссылка)   | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



zim22 Или я не вырозился как надо или ты ничего не понял.
Мне нужно заполнить. например
Код

static char daytab[2][13] = {
{О, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{О, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};

ток все это с указателими на масив

Это сообщение отредактировал(а) budda074 - 14.7.2009, 20:08
PM MAIL   Вверх
zim22
Дата 14.7.2009, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(budda074 @  14.7.2009,  19:46 Найти цитируемый пост)
 инициализиревать масив из 13 указателей на int

Цитата(budda074 @  14.7.2009,  20:06 Найти цитируемый пост)
Мне нужно заполнить... ток все это с указателими на масив

Цитата(budda074 @  14.7.2009,  19:46 Найти цитируемый пост)
static int *tab[13]

Цитата(budda074 @  14.7.2009,  20:06 Найти цитируемый пост)
static char daytab[2][13]

вы определитесь, что вам нужно. указатели на массивы, массивы указателей на указатели на массивы указателей на int или что там ещё?






--------------------
PM MAIL   Вверх
budda074
Дата 14.7.2009, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



Gordon, Ничего не вышло  smile 
PM MAIL   Вверх
Gordon
Дата 14.7.2009, 20:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 9.7.2006

Репутация: 1
Всего: 6



Цитата(budda074 @  14.7.2009,  20:13 Найти цитируемый пост)
Gordon, Ничего не вышло



т.е. не вышло (что конкретно?)? У меня вышло... )))

Добавлено через 10 минут и 8 секунд
Цитата(zim22 @  14.7.2009,  19:49 Найти цитируемый пост)
я понял! благодарность - это заминусовать мой пост. отлично 


 smile 



--------------------

  
     
PM MAIL WWW   Вверх
budda074
Дата 14.7.2009, 21:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



Gordon, Illegal initialization...

zim22, упрощу :  
почему этот код не пашет
Код

static int *tab[13]={
  {0,31,28,31,30,31,30,31,31,30,31,30,31},
  {0,31,29,31,30,31,30,31,31,30,31,30,31}
};

PM MAIL   Вверх
Gordon
Дата 14.7.2009, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 9.7.2006

Репутация: 1
Всего: 6



budda074, вот полностью код (в VS 2008):

Код

#include "stdafx.h"
#include <iostream>

using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{            
    int a = 1, b = 2, c = 3, d = 4, e = 5, f = 6;
    
    int *tab[2][3] = {{&a, &b, &c}, {&d, &e, &f}};

    system("pause");
    return 0;
}


Добавлено через 1 минуту и 56 секунд
Ну или так:

Код

int *tab1[2][3] = {{new int(1), new int(2), new int(3)}, {new int(4), new int(5), new int(6)}};


Как zim22 показывал...

Добавлено через 3 минуты и 24 секунды
а ты создаешь одномерный массив указателей, а инициализируешь его как многомерный массив "значений", вроде так...


--------------------

  
     
PM MAIL WWW   Вверх
zim22
Дата 14.7.2009, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(budda074 @  14.7.2009,  21:00 Найти цитируемый пост)
почему этот код не пашет

потому что культиватор забыли установить
***
зачем вам массив указателей? smile  используйте массив значений. они лучше и пушистей!


--------------------
PM MAIL   Вверх
budda074
Дата 14.7.2009, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.6.2009

Репутация: нет
Всего: нет



О, заработал культиватор  smile 
Сэнкю
З.Ы. Сори, на плюсики постов не хватает. 
PM MAIL   Вверх
Rififi
Дата 14.7.2009, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 3
Всего: 36



почему этот код не пашет
static int *tab[13]={
  {0,31,28,31,30,31,30,31,31,30,31,30,31},
  {0,31,29,31,30,31,30,31,31,30,31,30,31}
};

Патамушта у тебя массив int'ов, а ты пытаешься родить из него массив int*
PM MAIL   Вверх
math64
Дата 15.7.2009, 09:16 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007

Репутация: 12
Всего: 72



Код

static int tab1[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
static int tab2[] = {0,31,29,31,30,31,30,31,31,30,31,30,31};
static int *tab[]={tab1, tab2 };

Амперсанды были не нужны

Это сообщение отредактировал(а) math64 - 15.7.2009, 13:06
PM   Вверх
Dov
Дата 15.7.2009, 10:59 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(math64 @  15.7.2009,  09:16 Найти цитируемый пост)
static int *tab[]={&tab1, &tab2 };

Думаю, что это даже не скомпилится.



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
zim22
Дата 15.7.2009, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


depict1
****


Профиль
Группа: Завсегдатай
Сообщений: 2682
Регистрация: 15.1.2009
Где: Украина

Репутация: 29
Всего: 69



Цитата(Dov @  15.7.2009,  10:59 Найти цитируемый пост)
Думаю, что это даже не скомпилится.

 smile 
Код

static int *tab[]={&tab1[0], &tab2[0] };

или
Код

static int *tab[]={tab1, tab2 };



--------------------
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0558 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.