You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.1 KiB
Groff
36 lines
1.1 KiB
Groff
15 years ago
|
.TH "<alloca.h>: Allocate space in the stack" 3 "4 Dec 2008" "Version 1.6.4" "avr-libc" \" -*- nroff -*-
|
||
|
.ad l
|
||
|
.nh
|
||
|
.SH NAME
|
||
|
<alloca.h>: Allocate space in the stack \-
|
||
|
.SH "Detailed Description"
|
||
|
.PP
|
||
|
|
||
|
.PP
|
||
|
.SS "Functions"
|
||
|
|
||
|
.in +1c
|
||
|
.ti -1c
|
||
|
.RI "void * \fBalloca\fP (size_t __size)"
|
||
|
.br
|
||
|
.in -1c
|
||
|
.SH "Function Documentation"
|
||
|
.PP
|
||
|
.SS "void* alloca (size_t __size)"
|
||
|
.PP
|
||
|
Allocate \fI__size\fP bytes of space in the stack frame of the caller.
|
||
|
.PP
|
||
|
This temporary space is automatically freed when the function that called \fBalloca()\fP returns to its caller. Avr-libc defines the \fBalloca()\fP as a macro, which is translated into the inlined \fC__builtin_alloca()\fP function. The fact that the code is inlined, means that it is impossible to take the address of this function, or to change its behaviour by linking with a different library.
|
||
|
.PP
|
||
|
\fBReturns:\fP
|
||
|
.RS 4
|
||
|
\fBalloca()\fP returns a pointer to the beginning of the allocated space. If the allocation causes stack overflow, program behaviour is undefined.
|
||
|
.RE
|
||
|
.PP
|
||
|
\fBWarning:\fP
|
||
|
.RS 4
|
||
|
Avoid use \fBalloca()\fP inside the list of arguments of a function call.
|
||
|
.RE
|
||
|
.PP
|
||
|
|