gpt4 book ai didi

c - c编程中的*和&运算符有什么区别?

转载 作者:太空狗 更新时间:2023-10-29 16:29:05 24 4
gpt4 key购买 nike

我只是确保我正确理解了这个概念。使用 * 运算符,我创建了一个新变量,它在内存中分配了一个位置。为了避免不必要地重复变量及其值,& 运算符用于将值传递给方法等,它实际上指向变量的原始实例,而不是制作新副本……对吗?这显然是一种肤浅的理解,但我只是想确保我没有把它们搞混。谢谢!

最佳答案

不完全是。您将出现在类型名称(用于定义变量)中的 ** 运算符混淆。

int main() {
int i; // i is an int
int *p; // this is a * in a type-name. It means p is a pointer-to-int
p = &i; // use & operator to get a pointer to i, assign that to p.
*p = 3; // use * operator to "dereference" p, meaning 3 is assigned to i.
}

关于c - c编程中的*和&运算符有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2702156/

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