已采纳回答 / LawrenceLam
这取决于自己限定的结束条件,例如fun(int a){ int n; if (a==0||a==1)n=1; else n=fun(a-1)*a; return n;}当a大于1,程序就会不停地递归直至a=1求出fun(1)的值,进而一层层求出fun(2)......fun(a),最后返回a的阶乘
2016-02-26
结构体占用空间的大小,其实是:最后一个变量的偏移量,加上最后一个变量的内存大小,加上最后一个变量的尾部填充字节数。这么说有点儿扯淡,最好的办法是看这里面最长的那个变量,比如是double,也就是8bytes,那么这就是最小的sector。剩下的比如是int char 和int,因为int占4 bytes,char 占1byte,它们俩加在一起不够一个sector,但是无法放下一个int了,所以它们俩占一个sector,后面填充无用值。而剩下的那个int自己独占一个sector,所以这个struct占用24 bytes内存空间。
2016-02-25