c语言中(int*)是什么意思
最近在看一段程序经常碰到一个变量前面加上(int*)&a[1]或者(long*)b[0]之类的我想知道这个到底是什么意思怎么用很急谢谢在线等待...
最近在看一段程序 经常碰到一个变量前面加上(int*)&a[1] 或者(long*)b[0]之类的 我想知道这个到底是什么意思 怎么用 很急 谢谢 在线等待
展开
3个回答
展开全部
int*代表的是int型的指针。声明的变量就叫指针变量。
存放地址的变量称为指针变量。指针变量是一种特殊的变量,不同于一般的变量,变量存放的是数据本身,而指针变量存放的是数据的地址。
举例:int* a = 68 ,系统为变量a分配的首地址为0X065FDF4H,声明空指针long *p = NULL,p=&a是存放变量a地址的指针变量,即p=&a中存放的值为0x065FDF4H(a的值为68,&a的值为0x065FDF4H)。
扩展资料
对变量a的访问有两种方式:
一是直接按地址0x065FDF4H找到a的存储单元,从而对变量a进行访问;
二是按系统为p=&a分配的地址先找到p=&a,然后根据p,&a的值(即变量a地址0x065FDF4H)找到变量a在内存中的存储单元,从而对变量a进行访问。对于前一种访问方式称为直接访问方式,后一种访问方式称为间接访问方式。
如果一个指针变量存放的是某个对象的地址,则称这个指针变量指向该对象。在C++程序设计中,指针变量只有确定了指向才有意义。
参考资料来源:百度百科-指针变量
展开全部
强制类型转换指针,&a[1]说的是地址,第二个数组成员的地址;
(int*)&a[1]把上面的第二个数组元素的的地址转换成一个整形的指针。
(long*)b[0]指向一个长整形的指针。
(int*)&a[1]把上面的第二个数组元素的的地址转换成一个整形的指针。
(long*)b[0]指向一个长整形的指针。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(int *)表示将后面的变量强制转换为INT指针类型数据,同理,(long *)就是长整型指针
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询