В linux / x86-32 ограничение стека по умолчанию составляет 2 МБ. Все современные ОС имеют одинаковое ограничение.
Как правило, вы не должны создавать большие объекты в стеке. Помимо локальных переменных, стек также используется для стековых фреймов для функций. Для каждого активного вызова функции в стеке используется некоторая память.
AFAIK на конкурирующих платформах ограничение памяти для самой программы.