标题:关于函数里面数据存储问题,请前辈不吝赐教
取消只看楼主
ourselves
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-9-28
结帖率:0
已结贴  问题点数:20 回复次数:0 
关于函数里面数据存储问题,请前辈不吝赐教
#include<stdio.h>
#define SIZE 4
int main(void)
{
    //short dates[SIZE];
    double bills[SIZE];
    short dates[SIZE];
    short *pti;
    short index;
    //double bills[SIZE];
    double *ptf;
    pti=dates;
    ptf=bills;
    printf("%23s %10s\n","short","double");
    for(index=0;index<SIZE;index++)
        printf("pointers+%d: %10p %10p\n",index,pti+index,ptf+index);
    return 0;
}
运行结果:
                  short     double
pointers+0:   0012FF20   0012FF28
pointers+1:   0012FF22   0012FF30
pointers+2:   0012FF24   0012FF38
pointers+3:   0012FF26   0012FF40
然后把函数里面的两个数组顺序变一下:
double bills[SIZE];
short dates[SIZE];
变为:
short dates[SIZE];
double bills[SIZE];
然后输出结果变为:
                  short     double
pointers+0:   0012FF40   0012FF20
pointers+1:   0012FF42   0012FF28
pointers+2:   0012FF44   0012FF30
pointers+3:   0012FF46   0012FF38
小弟想请问一下各位前辈,关于函数里面的变量和数据是怎么存储的,不是按照栈(后进先出)的顺序吗?最先进去的不是在最底层的吗?请各位高手不吝赐教,小弟感激不尽。。
搜索更多相关主题的帖子: return include 存储 double 
2012-10-23 22:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-383918-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.134124 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved