Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 14
1

Преобразование массива одного типа в другой

22.11.2013, 13:16. Показов 3143. Ответов 12
Метки нет (Все метки)

Есть массив int-овых чисел. Нужно его перевести в массив double. Поэлементно с помощью цикла очень долго, не подходит. Может быть есть какая-нибудь функция или библиотека, чтобы быстро преобразовать тип?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2013, 13:16
Ответы с готовыми решениями:

Преобразование одного массива данных в другой
Как сделать преобразование одного массива данных в CSV файлах? Пример считываем 12 столбец файла (в...

Преобразование массива из одного типа в другой
Дан массив из 50 строк string line Как преобразовать его к типу инт

Преобразование одного типа в другой
Привет. Проходил тему про преобразования одного типа в другой например это: static void Main()...

Преобразование из одного типа в другой
подскажите пожалуйста как преобразовать из tprotocolversion в string?)

12
1454 / 791 / 257
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
22.11.2013, 13:27 2
C++
1
2
std::vector<int> i {1,2,3,4,5};
std::vector<double> d(i.begin(), i.end());
0
What a waste!
1604 / 1297 / 179
Регистрация: 21.04.2012
Сообщений: 2,723
22.11.2013, 13:29 3
Цитата Сообщение от max-gambit Посмотреть сообщение
Поэлементно с помощью цикла очень долго, не подходит.
Быстрее некуда...
0
:)
Эксперт С++
4769 / 3263 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
22.11.2013, 13:38 4
max-gambit, а зачем преобразование понадобилось? Может проще сразу иметь массив вещественных чисел?
0
829 / 637 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
22.11.2013, 13:42 5
DiffEreD, и с чего же это быстрее?

max-gambit, не может быть медленно циклом, если ты в нём какую-нибудь фигню типа ресайза массива не написал.
0
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 14
22.11.2013, 14:30  [ТС] 6
Есть массив int-овых чисел, который с определенной частотой обновляется. И нужно по этим числам построить график с помощью qwt(графическая библиотека). Подходящий для меня метод оперирует только double векторами, посему мне нужно преобразовать вектор int в double. А т.к. данные обновляются примерно раз в секунду, то чем быстрее будет происходить преобразование, тем лучше. Вектор имеет примерную длину 1000X100. Вообще стоит задача оптимизации скорости работы данной программы.
0
What a waste!
1604 / 1297 / 179
Регистрация: 21.04.2012
Сообщений: 2,723
22.11.2013, 14:40 7
max-gambit, а обновлять массив double нельзя?
0
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 14
22.11.2013, 14:54  [ТС] 8
данные поступают именно в формате int. Вообще не очень здорово что приходится их переводить в double, т.к. тогда вектор будет весить достаточно много, но тут уж мои полномочия ограничиваются возможностями qwt...
0
:)
Эксперт С++
4769 / 3263 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
22.11.2013, 15:15 9
max-gambit, если поступают в интах, а нужно в даблах, то преобразовывать придется поэлементно.
Цитата Сообщение от max-gambit Посмотреть сообщение
вектор будет весить достаточно много
всего-то в 2 раза больше (скорее всего, при 4 байтном целом, и 8 байтном дабле)
0
What a waste!
1604 / 1297 / 179
Регистрация: 21.04.2012
Сообщений: 2,723
22.11.2013, 15:17 10
max-gambit, единственный вариант, который я лично вижу здесь - избавиться от преобразования, т.е. хранить сразу в double.
0
829 / 637 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
22.11.2013, 16:51 11
Цитата Сообщение от max-gambit Посмотреть сообщение
Вектор имеет примерную длину 1000X100.
Это существенно менее секунды.
Кстати, используй указатели вместо обращения по индексу.

Цитата Сообщение от max-gambit Посмотреть сообщение
И нужно по этим числам построить график
Эм.. Т. е. график построиться успевает, а числа перевестись - нет?
Что-то подозрительно...
0
What a waste!
1604 / 1297 / 179
Регистрация: 21.04.2012
Сообщений: 2,723
22.11.2013, 16:56 12
Цитата Сообщение от Qwertiy Посмотреть сообщение
Кстати, используй указатели вместо обращения по индексу.
Даже если это вдруг и будет иметь эффект, то незначительный.
0
829 / 637 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
22.11.2013, 17:52 13
Цитата Сообщение от gray_fox Посмотреть сообщение
Даже если это вдруг и будет иметь эффект, то незначительный.
Это будет иметь эффект в виде отсутствия двух операций сложения на элемент.
Правда, появится ещё один инкремент.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2013, 17:52

Преобразование значений из одного специализированного типа в другой
Мне необходимо реализовать корректное преобразование значений из одного специализированного типа в...

Перевод из одного типа массива в другой
Всем привет! Возникла задача автоматизации перевода из одного типа массива в другой, ну например...

Преобразование из одного класса в другой
Привет, есть два класса RUSmoney и USmoney. Там я сделал конвертирование из RUSmoney в USmoney и...

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

Преобразование массива типа char в массив типа float
Хорош ли следующий способ преобразования массива типа char в массив типа float? #include...

Преобразование таблицы из одного вида в другой через SQL
Уважаемые знатоки sql запросов и Access'а. Помогите, пожалуйста, разобраться со следующей...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

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