A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© woaidd99 中级黑马   /  2015-5-30 21:03  /  1403 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int a = 100;
int *p = &a;
那么int *p = &a;,中的int定义的是指针的类型,还是指针变量所对应的存储单元中存储数据的类型.

16 个回复

倒序浏览
表示定义的指针只能存储对应类型的变量的地址
回复 使用道具 举报
说清楚点吧  好像没听懂
回复 使用道具 举报
楼主莫钻牛角尖
回复 使用道具 举报
是指针变量所对应的存储单元中存储数据的类型.
回复 使用道具 举报
指针就是地址,地址是不分类型的.你说的应该是访问指针变量存储的指针空间时需要提取多少字节吧.
回复 使用道具 举报

shui   tie
回复 使用道具 举报
定义了一个intl类型的指针变量,指针变量所对应的存储单元中只能存储int类型变量的地址
回复 使用道具 举报
围观学习啦
回复 使用道具 举报
fixer 中级黑马 2015-5-31 00:11:39
10#
当然是后者,指针是地址,地址是没有类型的,指针变量分类型是为了引用数据的时候不会出错
回复 使用道具 举报
int是指针变量所存储地址的数据类型
回复 使用道具 举报
表示指向int类型的数据
回复 使用道具 举报
fixer 发表于 2015-5-31 00:11
当然是后者,指针是地址,地址是没有类型的,指针变量分类型是为了引用数据的时候不会出错 ...

你可以听听  视频  貌似不是这么说的
回复 使用道具 举报
表示定义的int类型指针只能存储Int类型的变量的地址
回复 使用道具 举报
woaidd99 发表于 2015-5-31 22:59
你可以听听  视频  貌似不是这么说的

其实他说的是对的,因为任何数据在内存中存储的都是01形式的,所以根本就没有什么数据类型之说,
int *p =&a,表示的是p指向了a变量,确切的说,应该是指向了a变量的首字节的地址(a是int 类型,占的是4个字节 ,而p指向的事第一个字节的内存地址)。*P表示操作p的地址所指的内存空间,但是具体操作后面的多少字节呢?这里就要看定义的指针变量P的时候类型,这里是int 字节,所以操作的是后面四个字节(包括首字节)。
回复 使用道具 举报
星空眼泪 发表于 2015-6-1 12:38
其实他说的是对的,因为任何数据在内存中存储的都是01形式的,所以根本就没有什么数据类型之说,
int *p ...

哦哦  好像是这么回事
回复 使用道具 举报
可以写成int *p=a,直接取他得首地址.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马