(int*)a[0]和&a[0]有啥区别
时间:2011-12-15
来源:互联网
a是一个数组名 那么(int*)a[0]和&a[0]有啥区别?
作者: nnnnnnnn1111 发布时间: 2011-12-15
区别是
假设是int a[5];
(int*)a[0];相当于: int tmp = ar[0]; (int*)temp;//后面一句。将第一个元素的值,强制转换成指针类型。指向未知内存。
&a[0];是第一个元素的地址。
假设是int a[5];
(int*)a[0];相当于: int tmp = ar[0]; (int*)temp;//后面一句。将第一个元素的值,强制转换成指针类型。指向未知内存。
&a[0];是第一个元素的地址。
作者: mingliang1212 发布时间: 2011-12-15
&a[0] 取a数组的首地址 也就是第一个元素的地址 类型为该数组类型的指针
(int*)&a[0] 一样,把指针强制转换成int指针 就是说用那个指针的话会把指向地址解析成int型
例子:
C/C++ code
(int*)&a[0] 一样,把指针强制转换成int指针 就是说用那个指针的话会把指向地址解析成int型
例子:
C/C++ code
int main() { char chArray[5]; chArray[4]=0; int *p=(int*)chArray; *p=0x31323334; cout<<chArray; }
作者: sryan 发布时间: 2011-12-15
引用 2 楼 sryan 的回复:
&a[0] 取a数组的首地址 也就是第一个元素的地址 类型为该数组类型的指针
(int*)&a[0] 一样,把指针强制转换成int指针 就是说用那个指针的话会把指向地址解析成int型
例子:
C/C++ code
int main()
{
char chArray[5];
chArray[4]=0;
int *p=(int*)chA……
&a[0] 取a数组的首地址 也就是第一个元素的地址 类型为该数组类型的指针
(int*)&a[0] 一样,把指针强制转换成int指针 就是说用那个指针的话会把指向地址解析成int型
例子:
C/C++ code
int main()
{
char chArray[5];
chArray[4]=0;
int *p=(int*)chA……
我发现我看错题目了。。。怨念。。。
是(int*)a[0]啊,就是把a[0]的值强转为int指针 假如是指针数组之类的还行 不然要出错的
作者: sryan 发布时间: 2011-12-15
a是一个数组名 那么(int*)a[0]和&a[0]有啥区别?
要理解操作符的优先级,
(int*)a[0] 等价于 (int *)(a[0])
&a[0] 等价于 &(a[0])
要理解操作符的优先级,
(int*)a[0] 等价于 (int *)(a[0])
&a[0] 等价于 &(a[0])
作者: seucs 发布时间: 2011-12-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28