zoukankan      html  css  js  c++  java
  • 结构指针变量作函数参数

    将一个结构体变量的值传递给另一个函数,有3种方法:

    (1)用结构体变量的成员做参数。

    (2)用结构体变量做实参。

    (3)用指向结构体变量的指针做实参,将结构体变量的地址传给形参。

    例:有一个结构体变量stu,内含学生学号、姓名和3门课程的成绩。通过调用函数print将他们输出。

    要求:用结构体变量做函数实参:

    #include "StdAfx.h"
    #include<stdio.h>
    #include<string.h>
    struct student
    {
        int num;
        char name[20];
        float score[3];
    };
    void print(struct student);
    void main()
    {
        struct student stu;
        stu.num=8;
        strcpy(stu.name,"lv");    //若直接赋值,则name必须为指针
        stu.score[0]=98.5;
        stu.score[1]=99.0;
        stu.score[2]=99.5;
        print(stu);
    }
    void print(struct student stu)
    {
        printf("	 num:%d
    ",stu.num);
        printf("	name:%s
    ",stu.name);
        printf("	score_1:%5.2f",stu.score[0]);
        printf("	score_2:%5.2f",stu.score[1]);
        printf("	score_3:%5.2f",stu.score[2]);
    }

    用指向结构体变量的指针做实参:

    #include "StdAfx.h"
    #include<stdio.h>
    #include<string.h>
    struct student
    {
        int num;
        char name[20];
        float score[3];
    };
    void print(struct student*);
    void main()
    {
        struct student stu;
        stu.num=8;
        strcpy(stu.name,"lv");    //若直接赋值,则name必须为指针
        stu.score[0]=98.5;
        stu.score[1]=99.0;
        stu.score[2]=99.5;
        print(&stu);
    }
    void print(struct student *stu)
    {
        printf("	 num:%d
    ",stu->num);
        printf("	name:%s
    ",stu->name);
        printf("	score_1:%5.2f",stu->score[0]);
        printf("	score_2:%5.2f",stu->score[1]);
        printf("	score_3:%5.2f",stu->score[2]);
    }
  • 相关阅读:
    上传图片预览--图片上传后显示在某个模块中
    商品规格选择--添加背景色,并显示已选规格
    jquery选项卡
    swiper轮播图--兼容IE8
    点击图片查看大图--以弹框的形式显示在屏幕正中间
    百度地图API首页 -- 鼠标经过:类似翻页效果和 类似锚点链接效果
    别踩白块
    Jersey(1.19.1)
    Table of Contents
    Jersey(1.19.1)
  • 原文地址:https://www.cnblogs.com/lvfengkun/p/10389992.html
Copyright © 2011-2022 走看看