指针指向位置(数据段、代码段、堆、栈……)

void func(char a)
{
static char b;
char *p1 = &a;
char *p2 = &b;
char p3[] = "&func";
}

static void (*p4)(char) = &func;

p1, p2, p3, p4分别指向什么位置
A. 数据段
B. 代码段
C. 栈
D. 堆
E. 不一定,视调用情况而定
全部评论
cacb,p3是指向栈里的,如果写成char *p3 = "&func";那就是caab
点赞 回复 分享
发布于 2017-10-25 10:49
函数形参是栈上,局部静态变量或者静态变量在数据段,常量在数据段,p4是指针,本身在数据段(因为是静态变量),但它指向代码段。所以是caab
点赞 回复 分享
发布于 2017-10-25 10:34
cacb
点赞 回复 分享
发布于 2017-10-24 22:39

相关推荐

梦倩倩:同学,瞅瞅我司,医疗独角兽,校招刚开,名额有限,先到先得,****最新动态,绿灯直达,免笔试~
我的秋招日记
点赞 评论 收藏
分享
09-17 20:37
已编辑
长沙学院 Java
涂莱:学院本重心后移,金10银11,甚至金11银12,战线拉长一点,对于学院本来说秋招是个持久战,加油吧
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务