微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C * vs []作为函数参数

有什么区别:
void foo(item* list)
{
    cout << list[xxx].string;
}

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

假设项目是:

struct item
{
    char* string;
}

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

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

解决方法

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

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

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

原文地址:https://www.jb51.cc/c/111217.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐