在C语言中,有如下的写法:int a = 5; int *pa; pa = &(a + 1);不对的话,请说明理由!

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/26 18:13:05

在C语言中,有如下的写法:int a = 5; int *pa; pa = &(a + 1);
不对的话,请说明理由!

pa = &(a+1)这一句不对.
a是一个变量,a+1是一个数值,无法再通过在前面加“&”获得一个地址.有的编译器可以用&(int )(a+1)的方式强制获得一个地址,但结果不确定,属于极危险的操作.