gpt4 book ai didi

C++ * vs [] 作为函数参数

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:11:34 25 4
gpt4 key购买 nike

有什么区别:

void foo(item* list)
{
cout << list[xxx].string;
}

void this(item list[])
{
cout << list[xxx].string;
}

假设项目是:

struct item
{
char* string;
}

指针指向字符数组的第一个

list只是一个项目数组...

最佳答案

对于编译器来说,没有区别。

虽然读起来不一样。 [] 表示您想要将数组传递给函数,而 * 也可能意味着只是一个简单的指针。

请注意,当作为参数传递时,数组会衰减为指针(以防您不知道)。

关于C++ * vs [] 作为函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10760893/

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