Функция Содержит размер стека.
Синтаксис extern unsigned _stklen;
Объявлено в dos.h
Описание _stklen содержит размер стека для всех шести моде-
лей памяти. Минимально допустимый размер стека
равен 128 словам; если вы указываете меньшее зна-
чение, то _stklen автоматически расширяется до
минимума. Размер стека по умолчанию равен 4К.
В моделях small и medium размер сегмента данных
вычисляется следующим образом:
data segment [small,medium] = global data +
heap + stack
где размер heap может быть получен через
_heaplen.
В модели tiny все (включая код) находится в одном
сегменте, поэтому в сегмент данных включается код
и 256 байт для PSP.
data segment [tiny] = 256 + code + global data +
heap + stack
В моделях compact и large не существует локально-
го heap, поэтому сегмент данных равен:
data segment [compact,large] = global data +
stack
В модели huge стек является отдельным сегментом,
а каждый модуль имеет собственный сегмент данных.
Смотрите также _heaplen
Пример:
#include
/* Установить больший размер стека, чем используется по умолчанию */
/* Это обьявление должно находится в глобальной области определения */
extern unsigned _stklen = 54321U;
int main(void)
{
/* показать текущий размер стека */
printf("Размер стека: %u\n",_stklen);
return 0;
}