1如果是变量,且p指向1,那么下列哪些表达式是的别名?(a)*p (b)&p (c) *&p (d)&*p (e) *i (f) &i (g)*&i (h)&*
时间: 2023-12-18 10:05:35 浏览: 37
(a) *p 和 &i 是别名,它们都指向 p 所指向的变量
(b) &p 是 p 的地址,不是别名
(c) *&p 相当于 p,不是别名
(d) &*p 和 p 是别名,它们都指向 p 所指向的变量
(e) i 不是指针类型,不是别名
(f) &i 是 i 的地址,不是别名
(g) *&i 相当于 i,不是别名
(h) &*i 和 i 是别名,它们都指向 i 所指向的变量
相关问题
下列表达式哪些是正确的? A Boolean=1 double=0.9239d B C long 1= -2 byte=340
表达式 A 错误,表达式 B 错误,表达式 C 错误。
解析:
A 错误,Java 中的布尔型变量只能赋值为 true 或 false,不能赋值为 1。
B 正确,double 类型的变量可以使用字母 d 或 D 结尾,表示变量是 double 类型。
C 错误,Java 中的变量不能以数字开头,long 1= -2 是错误的,应该写成 long num= -2。byte 类型的变量的取值范围是 -128 到 127,340 超出了这个范围,因此也是错误的。
if(b&1)res=res*1ll*a%p;
这是一个if语句,其中b和a是变量,p和res是变量或常量,1ll是长整型常量1。
该语句的功能是判断变量b的最后一位是否为1,如果是,则将变量a的值乘到变量res上,然后对p取模。其中,`*1ll`是将值1转换为长整型,以避免在计算时发生溢出。该语句通常用于对整数进行快速幂运算的场合,如计算a的b次方模p的值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)