City_Streets 2016-03-25 12:44 采纳率: 0%
浏览 1851

c语言中,一个已定义的指针变量被置空后是如何"记得"它以前所指向的变量的类型的?

如题,比如定义了一个整型的指针p指向整型变量a :
int *p = &a ;
然后将p置空:p = null;
这个时候指针p中所存放的数据即地址已经被清空了,但是再次http://ask.csdn.net/#使用p时还是只能
将其指向整型类型的变量,而不能指向其他类型的变量(比如字符型变量),那么p是
怎么"记得"它在被定义时候的类型的?它的值不是已经被清零了吗?
求大神解答!

  • 写回答

3条回答 默认 最新

  • LUZHA 2016-03-25 13:06
    关注

    它被定义为整型指针后就只能指向整型变量,因为地址的分配模式是不一样的,比如整型指针只有32位可以储存,它就无法指向一个地址长度为64位的变量

    评论

报告相同问题?