Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The latest version of this topic can be found at -STACK (Stack Allocations).
STACK:reserve[,commit]
## Remarks
The /STACK option sets the size of the stack in bytes. Use this option only when you build an .exe file.
The `reserve` value specifies the total stack allocation in virtual memory. For ARM, x86 and [!INCLUDE[vcprx64](../Token/vcprx64_md.md)] machines, the default stack size is 1 MB.
`commit` is subject to interpretation by the operating system. In Windows WindowsRT it specifies the amount of physical memory to allocate at a time. Committed virtual memory causes space to be reserved in the paging file. A higher `commit` value saves time when the application needs more stack space, but increases the memory requirements and possibly the startup time. For ARM, x86 and [!INCLUDE[vcprx64](../Token/vcprx64_md.md)] machines, the default commit value is 4 KB.
Specify the `reserve` and `commit` values in decimal or C-language notation.
Another way to set the size of the stack is with the [STACKSIZE](../Topic/STACKSIZE.md) statement in a module-definition (.def) file. **STACKSIZE** overrides the Stack Allocations (/STACK) option if both are specified. You can change the stack size after the .exe file is built by using the [EDITBIN](../Topic/EDITBIN%20Reference.md) tool.
### To set this linker option in the Visual Studio development environment
1. Open the project's **Property Pages** dialog box. For details, see [Setting Visual C++ Project Properties](../Topic/Working%20with%20Project%20Properties.md).
2. Select the **Linker** folder.
3. Select the **System** property page.
4. Modify one of the following properties:
- **Stack Commit Size**
- **Stack Reserve Size**
### To set this linker option programmatically
1. See [StackCommitSize](assetId:///P:Microsoft.VisualStudio.VCProjectEngine.VCLinkerTool.StackCommitSize?qualifyHint=False&autoUpgrade=True) and [StackReserveSize](assetId:///P:Microsoft.VisualStudio.VCProjectEngine.VCLinkerTool.StackReserveSize?qualifyHint=False&autoUpgrade=True) properties.
## See Also
[Setting Linker Options](../Topic/Setting%20Linker%20Options.md)
[Linker Options](../Topic/Linker%20Options.md)