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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Массивы VC++, Использование ??? 
:(
    Опции темы
IntraDenX
Дата 28.6.2002, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Подскажите как можно использовать как массивы с размером, а также и без него в Microsoft Visual C++?

--
С Уважением, Денис
[email protected]
IntraWeb
PM MAIL   Вверх
Baa
Дата 28.6.2002, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

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



Чего-то не понял...как это массив без размера? массив это определенное количество байт(слов, двойных слов и т.д.) и как у всего прочего у него есть размер, другое дело, что размер может определятся динамически. Или ты вообще о чем?


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
__root
Дата 28.6.2002, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Можно так:
Код

char array[] = "Моя строка"; // массив без размера
char array[12] = "Моя строка"; // массив с размером (количество символов плюс символ окончания строки "/0")

Примечание: эти массивы являются константами!
PM MAIL   Вверх
suborg
Дата 29.6.2002, 23:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



char array[]="dfsfsfd";
не является массивом без размера, просто тут размер берется из длины строки. Неявное определение размера, так сказать.

Безразмерный массив (наращиваемый) можно организовать на базе динамических списков стандартных или самодельных.
Почитай про std::list - шаблонный класс списка, неплохая вещь.
Еще можно просто указателями пользоваться и динамическим выделением памяти если заранее не известна длина массива, но в процессе работы становится ясна -
char *arr;
la la topola
arr=new char[size];
PM MAIL WWW ICQ   Вверх
IntraDenX
Дата 30.6.2002, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Ну я вообще-то не про это !!! Я про вот, что:
var1[1] = "строка1";
var1[2] = "строка2";
и т.д. чтобы в одной переменной было несколько значений !!!
PM MAIL   Вверх
Alex101
Дата 30.6.2002, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва

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



Цитата(IntraDenX @ 30.6.2002, 19:06)
Ну я вообще-то не про это !!! Я про вот, что:
var1[1] = "строка1";
var1[2] = "строка2";
и т.д. чтобы в одной переменной было несколько значений !!!

char var[2][8];


--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
IntraDenX
Дата 1.7.2002, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Alex101 @ 30.6.2002, 22:52)
Цитата(IntraDenX @ 30.6.2002, )
Ну я вообще-то не про это !!! Я про вот, что:
var1[1] = "строка1";
var1[2] = "строка2";
и т.д. чтобы в одной переменной было несколько значений !!!

char var[2][8];

Ага, а как теперь присвоить какую-нибудь строку ??? У меня VC++ не хочет так:
char var1[2][9];
var[1] = "aaaaaaaaaa"
PM MAIL   Вверх
Baa
Дата 1.7.2002, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

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



char szStr[2][20];
strcpy (szStr[0], "Test");
strcpy (szStr[1], "SomeOtherTest");

AfxMessageBox (szStr[0]);
AfxMessageBox (szStr[1]);


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
IntraDenX
Дата 1.7.2002, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Thanks, ща посмотрю работает...
PM MAIL   Вверх
Lion
Дата 11.7.2002, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(IntraDenX @ 28.6.2002, 19:27)
Подскажите как можно использовать как массивы с размером, а также и без него в Microsoft Visual C++?

--
С Уважением, Денис
[email protected]
IntraWeb

Ну раз вопрос про Microsoft Visual C++, то под безразмерными массивами наверное подразумеваются CArray (и производные от него CObArray).

Есть еще и класс CMap, тоже интересный.

А используются, ну что сказать, хорошо используются!  ;-)

P.S. Например у меня  в потоке был массив указателей, на диалоги созданные в потоке и ему принадлежащие.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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