数据内存存放问题
数据内存存放问题
#include<stdio.h>
void main()
{
char a[]="123456789"; //断点处
char b[]="abcdefg";
}
机器是先确定指定a的值呢还是先确定指针b的值呢?
我设断点看过,跳到指定断点处时,a的值和b的值都有了,并且a的地址值大于b的地址值,这是为什么呢?
请大家指点一下,谢谢
数据内存存放问题
#include<stdio.h>
void main()
{
char a[]="123456789"; //断点处
char b[]="abcdefg";
}
机器是先确定指定a的值呢还是先确定指针b的值呢?
我设断点看过,跳到指定断点处时,a的值和b的值都有了,并且a的地址值大于b的地址值,这是为什么呢?
请大家指点一下,谢谢
因为另一个版块老久没人答所以我才又在这发了,SORRY
可能我没问清楚
没错,a、b的内容是地址,放在栈里的话应该是a放在下面,b放在上面,a的地址应该大于b的地址(地址的地址/栈内的地址),但是为什么a的内容(也是地址/a所指向的字符串首地址)大于b的内容呢? 这两个字符串可不是放在栈里面的哦
应该不能
你把数据发上来