gpt4 book ai didi

对 * 运算符性质的混淆

转载 作者:行者123 更新时间:2023-11-30 18:31:54 25 4
gpt4 key购买 nike

我对以下两个声明感到困惑:

int *p=&a; //first

int *p; //second
p=&a;

星号*不充当解引用运算符。大多数地方我都见过*充当解引用运算符。我的问题是,除了第一种情况外,是否有任何情况 *运算符不充当解引用运算符?

最佳答案

* 仅在表达式中充当解引用运算符

C 声明的(确实很奇怪)语法基于“声明遵循使用”的思想。所以这些声明:

int i;
int *p;

可以读作“i是一个int”,而*p是一个int。由于 *pint,因此 p 必须是指向 int 的指针。

(当然,如果*与两个操作数一起出现,它也是乘法运算符。)

关于对 * 运算符性质的混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18519148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com