Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 3 / 0
Регистрация: 28.06.2013
Сообщений: 359
1

Возможно, ли создать какой либо массив без определение его типа?

22.05.2014, 13:18. Показов 1220. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите понят задание. Не могу понять что имеется введу.

Задача:
Пишите программу так чтобы она отображала содержимое массива без использование определение типа указателя во внешнем цикле.

Я не могу понят, каким образом можно отображать содержание массива без определение типа указателя. Указатель на нулевой элемент и есть название массива. Как вообще возможно создать какой либо массив без определение его типа? Может я не так понял задачу. Напишу все как есть в книге.

C++
1
2
3
4
5
typedef int int_array[4];
int_array *ip = ia;
for(int_array *p = ia; p != ia + 3; ++p)
for(int *q = *p; q != *p +4; ++q)
cout <<*q<<endl;
Эту программу поазал как пример в теле текста (стр 167 Липпман)
Задача: Перепишите программу так, чтобы она отобрaжала содержимое массива ia без использование определение типа для указателя во внешнем цикле.

Может автор имеет введу определение типа int_array?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2014, 13:18
Ответы с готовыми решениями:

Перезагружается компьютер: без предупреждения, без синего экрана и без какой-либо периодичности
Привет, перезагружается комп, бывает раз в день, бывает раз в 3 дня, сам по себе. При чем в игры...

Перезагружается компьютер: без предупреждения, без синего экрана и без какой-либо периодичности
привет всем. Вообщем вкратце такая проблема. компьютер сам перезагружается, без предупреждения, без...

Требуется определение типа или пространства имен, либо признак конца файла
using UnityEngine; using System.Linq; using System.Text; using System.Threading.Tasks; using...

Требуется определение типа или пространства имен, либо признак конца файла
using System; using System.Windows.Forms; using WindowsFormsApplication1; namespace...

4
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
22.05.2014, 13:52 2
Цитата Сообщение от Altair42 Посмотреть сообщение
Может автор имеет введу определение типа int_array?
Да. Именно так. Убрать typedef и получить эквивалентный код.
0
1296 / 469 / 151
Регистрация: 24.08.2011
Сообщений: 2,249
22.05.2014, 13:53 3
Скорее всего имеется в виду, что надо объявлять указатель типа void, а потом уже приводить его к нужному типу.
Что-то типа
C++
1
2
3
4
5
6
7
8
typedef int int_array[4];
int_array *ip = ia;
for(void *p = ia; p != ia + 3;)
{
   for(int *q = *p; q != *p +4; ++q)
      cout <<*q<<endl;
   (dynamic_cast<int_array*>(p))++;
}
0
0 / 3 / 0
Регистрация: 28.06.2013
Сообщений: 359
22.05.2014, 13:59  [ТС] 4
Керра, Tulosba, кому теперь верит?

Добавлено через 43 секунды
Первый вариант выгладит более норм
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
22.05.2014, 14:38 5
Лучший ответ Сообщение было отмечено Altair42 как решение

Решение

Цитата Сообщение от Altair42 Посмотреть сообщение
без использование определение типа для указателя во внешнем цикле.
внешний цикл видим?
C++
1
for(int_array *p = ia; p != ia + 3; ++p)
тип указателя видим?
C++
1
int_array *p
Ещё вопросы?

Решение под спойлером, если что
Кликните здесь для просмотра всего текста
C++
1
for( int (*p)[4] = ia; p != ia + 3; ++p)


Не по теме:

Цитата Сообщение от Керра Посмотреть сообщение
C++
1
(dynamic_cast<int_array*>(p))
dynamic_cast из void* ? однако. Вообще-то dynamic_cast только для полиморфных типов предназначен.

0
22.05.2014, 14:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2014, 14:38
Помогаю со студенческими работами здесь

Требуется определение типа или пространства имен, либо признак конца файла
Определить расстояние на плоскости между двумя точками с заданными координатами M1(x1,y1) и...

Нужно создать массив типа double и заполнить его псевдослучайными числами
Задание. С клавиатуры вводится число n - количество элементов массива. Нужно создать массив типа...

Нужно создать массив типа double и заполнить его псевдослучайными числами
Задание. С клавиатуры вводится число n - количество элементов массива. Нужно создать массив типа...

Определение минимально возможно типа данных по размеру
Доброго времени суток. У меня есть рандомное число. Как определить в какой минимальный по размеру...

Возможно ли настроить IIS(какой-либо) для поддержки нескольких доменов 2-го уровня на одном порту?
Возможно ли настроить IIS(какой-либо) для поддержки нескольких доменов 2-го уровня на одном порту?...

Возможно ли через какой-либо скрипт(Command)или Run выполнить заготовленные мною операции?
Начал по немногу копать C++... Вопрос: Возможно ли через какой либо скрипт(Command)или Run...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru