美文网首页十天学会C语言
第09天C语言(18):结构体和函数

第09天C语言(18):结构体和函数

作者: liyuhong | 来源:发表于2017-07-12 22:52 被阅读23次
一、概念
// 1.将结构体属性传递给函数,在函数中修改形参 不会影响到实参
// 2.将结构体名称 作为参数传递, 在函数中修改形参 不会影响到实参
// 结构体之间赋值是 值传递, 系统会将结构体的值 拷贝一份 到 B结构体中
二、代码
#include <stdio.h>
struct Person
{
    int age;
    char *name;
};
//void change(int value);
//void change(struct Person value);
void change(struct Person *p);
int main()
{

    /*
    struct Person p = {25,"lyh"};
    printf("age = %i\n",p.age);
    change(p);
    printf("age = %i\n",p.age);
     */
    
    /*
    struct Person s1 = {25,"lyh"};
    struct Person s2 = s1; // 结构体之间赋值 是值传递,相当于拷贝
    printf("sp1.age = %i\n",s1.age);
    s2.age = 998;
    printf("sp1.age = %i\n",s1.age);
    printf("sp2.age = %i\n",s2.age);
     */
    
    struct Person s1 = {25,"lyh"};
    printf("sp1.age = %i\n",s1.age);
    change(&s1);
    printf("sp1.age = %i\n",s1.age);
    return 0;
}

//void change(int value)
//void change(struct Person value)
void change(struct Person *p)

{
    p->age = 33;
}

相关文章

  • 第09天C语言(18):结构体和函数

    一、概念 二、代码

  • [C]基础语法

    [C语言]数据结构 STRUCT 结构体 位域 ERUM 枚举语法定义格式 回调函数 C语言中的回到函数 Defi...

  • LCTHW - 18

    18. 函数指针 C语言中的函数实际上都是指向一段代码的指针(这段代码就是函数的实现).就像创建指向结构体, 变量...

  • C++语言学习之面向对象

    1.C语言与C++语言的区别 C++面向对象 C 面向过程 函数+结构体 C++可以运行调用C语言 反之 C语言无...

  • C++ 面向对象

    C++ 与 C语言 区别 C++ 面向对象、标准特性; C 面向过程,函数+结构体 C++可以运行C语言,反之就不...

  • 6.结构体相关

    一 C 结构体和结构体指针 eg1: 一 结构体里面定义函数 通过结构体指针访问结构体里面定义的函数。 eg2:

  • C语言day09-18结构体和函数

    pragma mark 结构体和函数 pragma mark 概念 /**结构体之间赋值 是 值传递, 相当于拷贝...

  • C语言和OC的结构体(struct)

    Struct(结构体) 1.结构体定义 2.结构体变量 3.结构体数组 4.C语言结构体指针 5.C语言共用体 6...

  • 《Effective Objective-C 2.0 》 阅读笔

    第1条:了解Objective-C语言的起源 1. 消息结构与函数调用 Objective-C语言使用“消息结构”...

  • Block

    OC类实际是按照以下方式来存储对象的 block在C语言层面就是结构体,结构体存储了函数指针和捕获的变量列表 bl...

网友评论

    本文标题:第09天C语言(18):结构体和函数

    本文链接:https://www.haomeiwen.com/subject/eisihxtx.html