From: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) Newsgroups: comp.os.msdos.djgpp Subject: Re: segmentation fault... Date: 10 Aug 1997 10:51:07 GMT Organization: The National Capital FreeNet Lines: 30 Message-ID: <5sk6er$evr@freenet-news.carleton.ca> References: <33E99579 DOT 8B2 AT gapeach DOT com> <33EA9842 DOT 5653 AT cornell DOT edu> <33EC3E5A DOT 5A6C AT gapeach DOT com> Reply-To: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) NNTP-Posting-Host: freenet6.carleton.ca To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Stack: 256K by default. Stores local vars of the current function and all calling functions still active. Stores also the addresses to return to, and is sometimes used to pass params to a function, especially with varargs. Biggest causes of overflows: too many BIG local variables, or one WAY too big, usually arrays of large dimensions or huge structs; and unbounded recursive function calls. Heap: The rest of memory your program can use, not taken up with code. (Or the code migh be there too...) Parts of the heap may be swapped to disk for virtual memory. Global variables, static variables, module-level variables, string constants, array constants, mallocked memory, and objects allocated in C++ with new all are put in the heap. Real out of memory errors (malloc returning NULL and new exceptions) usually result from either INCREDIBLE memory use, or use on a tiny computer, or use of Windows , or possibly unbound recursion in something that allocates memory, such as constructors, functions with new or malloc, and the like. It can also occur through memory "leaks" when a program dynamically allocates, with new or malloc, a lot of stuff and deallocates and so forth, i.e. when opening and closing documents, if there is a bug in your code that causes some stuff allocated with malloc or new to be missed when cleaning up. -- .*. Where feelings are concerned, answers are rarely simple [GeneDeWeese] -() < When I go to the theater, I always go straight to the "bag and mix" `*' bulk candy section...because variety is the spice of life... [me] Paul Derbyshire ao950 AT freenet DOT carleton DOT ca, http://chat.carleton.ca/~pderbysh