Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 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