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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© rensnail 中级黑马   /  2014-12-29 14:33  /  1030 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

C语言问题,既然指针是存地址的,地址都是一个类型,那么指针为什么要分类型呢?什么 int* 和 char*

8 个回复

倒序浏览
= =!通俗的说,为了准确地访问内存,指针存的是变量第一个内存单元的地址,int *就会访问四个,char *访问一个,不指定类型就不知道该访问多大。
回复 使用道具 举报 1 0
从今以后 发表于 2014-12-29 14:36
= =!通俗的说,为了准确地访问内存,指针存的是变量第一个内存单元的地址,int *就会访问四个,char *访问 ...

int就是从存储的地址向后取4个字节,char就是向后取1个字节,是吧?
回复 使用道具 举报
读取数据的时候确定内存范围
回复 使用道具 举报
因为它取值或者写入的时候,都要看指针变量的类型
回复 使用道具 举报
楼上有理。
回复 使用道具 举报
rensnail 发表于 2014-12-29 14:39
int就是从存储的地址向后取4个字节,char就是向后取1个字节,是吧?

差不多就这意思吧= =太深的理解不晓得呢
回复 使用道具 举报
WELL--V 中级黑马 2014-12-29 16:04:31
8#
地址指向什么类型的数据,就把指针定义为什么类型,语法就这样。
回复 使用道具 举报
BBD2008 中级黑马 2014-12-29 20:58:42
9#
楼上都是正解,想得分真难啊,基本全都有答案了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马