C语言栈内存的分配

来源:互联网 发布:淘宝网卧室梳妆台 编辑:程序博客网 时间:2024/04/28 16:17

由于函数栈内存分配顺序真是方向不同,容易出错,所以运行一下程序特意证明了一下。直接上程序,程序很简单。

#include<stdio.h>int main(void){    int a;    int b;    char buf[4];    printf("&a:%p\n",&a);    printf("&b:%p\n",&b);    printf("buf的地址:%p\n",&buf[0]);    printf("buf+1地址:%p\n",&buf[1]);    printf("buf+2地址:%p\n",&buf[2]);    printf("buf+3地址:%p\n",&buf[3]);    printf("buf+4地址:%p\n",&buf[4]);//故意越界数组去访问。    return 0;}

&a:0018FF44
&b:0018FF40
buf的地址:0018FF3C
buf+1地址:0018FF3D
buf+2地址:0018FF3E
buf+3地址:0018FF3F
buf+4地址:0018FF40

总结:
内存分配

0 0
原创粉丝点击