Sponsored Content
Full Discussion: stack query
Top Forums Programming stack query Post 83594 by aloksave on Friday 16th of September 2005 07:24:39 AM
Old 09-16-2005
stack query

can anyone explain how the local variables are acessed from a stack frame of that particular function..since stacks can only push or pop values and stack pointer always points to top of the stack and the frame pointer always points to the end of the previous stack frame..how local variables are acessed?
for eg:
suppose for func temp
int temp(int a,int b);
{
int d=10;
int e,f,g;
e = d;
g = e+d;
f=g;
return(1);
}

first b will be pushed then a then the return address and the then stack frame for the func temp will start..and d,ef,g will be pushed in..but then how are these local variables acesses for assignment when only way they can come out by popping..
may be im not able to explain in proper way but can anyone if possible explain this...
 

7 More Discussions You Might Find Interesting

1. Programming

what is stack winding and stack unwinding

helo can u tell me what do you mean by stack winding and stack unwinding Regards, Amit (2 Replies)
Discussion started by: amitpansuria
2 Replies

2. Programming

Heap and stack

Hi, I have a basic doubt here. Consider the following code snippet: main() { int *a; . . } Here the memory for a gets allocated in heap or stack. (5 Replies)
Discussion started by: naan
5 Replies

3. Shell Programming and Scripting

add the output of a query to a variable to be used in another query

I would like to use the result of a query in another query. How do I redirect/add the output to another variable? $result = odbc_exec($connect, $query); while ($row = odbc_fetch_array($result)) { echo $row,"\n"; } odbc_close($connect); ?> This will output hostnames: host1... (0 Replies)
Discussion started by: hazno
0 Replies

4. Shell Programming and Scripting

Query Oracle tables and return values to shell script that calls the query

Hi, I have a requirement as below which needs to be done viz UNIX shell script (1) I have to connect to an Oracle database (2) Exexute "SELECT field_status from table 1" query on one of the tables. (3) Based on the result that I get from point (2), I have to update another table in the... (6 Replies)
Discussion started by: balaeswari
6 Replies

5. Shell Programming and Scripting

Shell Script to execute Oracle query taking input from a file to form query

Hi, I need to query Oracle database for 100 users. I have these 100 users in a file. I need a shell script which would read this User file (one user at a time) & query database. For instance: USER CITY --------- ---------- A CITY_A B CITY_B C ... (2 Replies)
Discussion started by: DevendraG
2 Replies

6. UNIX for Dummies Questions & Answers

Kernel Stack vs User Mode Stack

Hi, I am new to the linux kernel development area. I want to know what is the difference between kernel mode stack and user mode stack? Does each process has a user mode stack and a kernel mode stack?? Or Each process has a user mode stack and there is only one kernel mode stack that is shared by... (4 Replies)
Discussion started by: saurabhkoar
4 Replies

7. UNIX for Dummies Questions & Answers

What happens to the stack?

Consider this bad code, edited in Windows and run via CygWin after dos2unix so be aware of any hidden "\r" charatcers... #!/bin/bash n=0 stackit() { eval $1 if then exit 0 fi n=$ echo "$n" stackit stackit } stackit stackit Run under CygWin:- AMIGA:~> cd /tmp AMIGA:/tmp>... (2 Replies)
Discussion started by: wisecracker
2 Replies
GLPUSHMATRIX(3G)														  GLPUSHMATRIX(3G)

NAME
glPushMatrix, glPopMatrix - push and pop the current matrix stack C SPECIFICATION
void glPushMatrix( void ) C SPECIFICATION
void glPopMatrix( void ) DESCRIPTION
There is a stack of matrices for each of the matrix modes. In GL_MODELVIEW mode, the stack depth is at least 32. In the other modes, GL_COLOR, const(PROJECTION), and GL_TEXTURE, the depth is at least 2. The current matrix in any mode is the matrix on the top of the stack for that mode. glPushMatrix pushes the current matrix stack down by one, duplicating the current matrix. That is, after a glPushMatrix call, the matrix on top of the stack is identical to the one below it. glPopMatrix pops the current matrix stack, replacing the current matrix with the one below it on the stack. Initially, each of the stacks contains one matrix, an identity matrix. It is an error to push a full matrix stack, or to pop a matrix stack that contains only a single matrix. In either case, the error flag is set and no other change is made to GL state. ERRORS
GL_STACK_OVERFLOW is generated if glPushMatrix is called while the current matrix stack is full. GL_STACK_UNDERFLOW is generated if glPopMatrix is called while the current matrix stack contains only a single matrix. GL_INVALID_OPERATION is generated if glPushMatrix or glPopMatrix is executed between the execution of glBegin and the corresponding execu- tion of glEnd. ASSOCIATED GETS
glGet with argument GL_MATRIX_MODE glGet with argument GL_COLOR_MATRIX glGet with argument GL_MODELVIEW_MATRIX glGet with argument GL_PROJECTION_MATRIX glGet with argument GL_TEXTURE_MATRIX glGet with argument GL_COLOR_STACK_DEPTH glGet with argument GL_MODELVIEW_STACK_DEPTH glGet with argument GL_PROJECTION_STACK_DEPTH glGet with argument GL_TEXTURE_STACK_DEPTH glGet with argument GL_MAX_MODELVIEW_STACK_DEPTH glGet with argument GL_MAX_PROJECTION_STACK_DEPTH glGet with argument GL_MAX_TEXTURE_STACK_DEPTH SEE ALSO
glFrustum(3G), glLoadIdentity(3G), glLoadMatrix(3G), glMatrixMode(3G), glMultMatrix(3G), glOrtho(3G), glRotate(3G), glScale(3G), glTranslate(3G), glViewport(3G) GLPUSHMATRIX(3G)
All times are GMT -4. The time now is 05:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy