C * vs []作为函数参数

前端之家收集整理的这篇文章主要介绍了C * vs []作为函数参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有什么区别:
void foo(item* list)
{
    cout << list[xxx].string;
}

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

假设项目是:

struct item
{
    char* string;
}

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

和列表只是一个项目数组…

解决方法

对编译器来说,没有区别.

它虽然看起来不一样. []建议您将数组传递给函数,而*也可能只是一个简单的指针.

请注意,当作为参数传递时,数组会衰减为指针(如果您还不知道).

原文链接:https://www.f2er.com/c/111217.html

猜你在找的C&C++相关文章