C语言结构体作为函数参数的用法

struct结构体函数参数

C语言的结构体是自定义的数据类型,如同int、double、数组等类似,都可以作为函数的参数进行传递。与其它数据类型一样的是,函数在定义的阶段,声明参数部分的时候,如果是结构体参数的话,也需要声明其类型。函数声明结构体struct参数的语法如下:

type functionName( struct structName varName)

提示:在声明结构体参数的阶段(函数未定义,只是声明),varName是可选的,跟其它类型的参数一样!

函数结构体参数实例代码

如下实例,先声明了一个struct结构体,然后定义了一个声明了结构体参数的函数,之后,在主函数main内部实例化了一个结构体,并用作参数传递给之前定义的函数,实例代码如下:

#include <stdio.h>
#include <string.h>
// 定义结构体Student
struct Student{
    char name[50];
    int score;
};

// 定义一个普通的函数
void say(struct Student a){
    printf("我叫%s\n",a.name);
    printf("这次考试的分数为%d\n",a.score);
}

int main() {
    // 实例化Student结构体
    struct Student xiaoming;
    strcpy(xiaoming.name, "xiaoming");
    xiaoming.score = 93;
    // 通过"."访问结构体内的函数
    say(xiaoming);
    return 0;
}

代码编译运行,得到输出:

我叫xiaoming
这次考试的分数为93

免责声明:内容仅供参考,不保证正确性!


全栈后端 / C语言教程 :


















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.