Ветеран
Сообщения: 1404
Благодарности: 135
|
Профиль
|
Отправить PM
| Цитировать
max(sz1,sz2) это не функция, а макрос, кстати.
Вспомнил, как находить размер.
arr_sz=sizeof(x)/sizeof(x[0]);
Хотя похоже с динамическими массивами это не работает.
Вопрос по прежнему остался.
Как определить размер динамического массива и не вылететь за его пределы?
Размер массива будет известен только после обработки данных функцией, до этого узнать его нельзя. Изначально даже самой функции вообще неизвестно, сколько элементов будет в массиве, и в целях экономии ресурсов, чтобы не копировать постоянно один массив в другой с увеличением размера, я устанавливаю минимально возможный (имею право, так как по условию задачи числа положительные). Если были бы отрицательные, то только копирование одного массива в другой. Так же как внутри функции устанавливается размер, вне этой функции использовать нельзя. Запускать два раза обработку, чтобы узнать размер и получить указатель нельзя. Нет никаких ошибок в проектировании.
|
-------
Ehhh.. what's up, doc?..
Последний раз редактировалось mrcnn, 14-12-2008 в 16:04.
Отправлено: 15:37, 14-12-2008
| #3
|