为什么call不到函数?

img


为什么显示no matching functuin for call to stek

类型不一致

img

#include<iostream>
using namespace std;
struct student{
    string name;
    int age;
}; 

void stek(struct student k){
    k.name="kk";
}

int main(){
    struct student s1={"he",18};
    stek(s1);
}

传参问题,实参和形参不匹配。你定义的函数参数是一个结构体,结果你传了一个结构体数组进去。你可以改成s1[0]。s1[0]就代表结构体数组里面的第一个结构体了。

因为函数只有定义没有声明

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632