| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Странный глюк со структурами |
| Автор: ressac 13.4.2009, 13:28 | ||
есть вот такое чудо
если NELM, больше чем 5 или равно 5, то при запуске вылетает ошибка памяти пробовал под вистой и под хрюшой |
| Автор: Alek86 13.4.2009, 13:34 |
| возможно, sizeof(Carreras[5]) слишком большой для стека - лень считать |
| Автор: azesmcar 13.4.2009, 13:37 | ||
| ressac Тебе стек не жалко??? у тебя Stack Overflow..создавай в куче
|
| Автор: Alek86 13.4.2009, 13:37 |
| таки посмотрел sizeof(Carreras) == 443748 5 * sizeof(Carreras) - больше двух метров стека |
| Автор: azesmcar 13.4.2009, 13:38 | ||
| да..и еще.. #define NCAR 100+1 такие макросы всегда бери в скобки.
потом проблемы будут..например NCAR * NCAR вернет совсем не то что ты предполагаешь. |
| Автор: Alexeis 13.4.2009, 13:44 |
Можно, в принципе, увеличить размер стека в опциях компилятора. Поставить например 5Мб. Вот только сомнителен факт, что переменная такого размера должна существовать лишь на время выполнения функции... |
| Автор: azesmcar 13.4.2009, 13:46 | ||
можно..но нужно ли? не думаю. Такие обьекты лучше создавать в куче. |
| Автор: Alexeis 13.4.2009, 14:16 |
| azesmcar, мало ли. Вообще да, в таких случаях скорость выделения памяти некритичный фактор. |
| Автор: ressac 13.4.2009, 16:44 |
| ясно, спасибо |