求学ing 2014年01月27日
指针做参数的疑惑
1.
void main()
{
char *pt1 = {"woshi"};
char *pt2;
pt2 = (char *)malloc(sizeof(pt2));
test(pt1);
test(pt2);
printf("pt1 is =%s\n",pt1);
printf("pt2 is =%s\n",pt2);
}

test(char *point)
{
char *q = {"haoren"};
point = q;
}

结果是pt1 = woshi没有被改变,
pt2 = haoren被赋值了.

不都是传的首地址的值吗,为什么一个被改变了,一个没有被改变呢.
求教.

...全文
223 点赞 收藏 14
写回复
14 条回复

还没有回复,快来抢沙发~

发动态
发帖子
C语言
创建于2007-09-28

3.2w+

社区成员

24.0w+

社区内容

C语言相关问题讨论
社区公告
暂无公告