文档章节

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

lyh2017iOS
 lyh2017iOS
发布于 2017/07/07 09:55
字数 341
阅读 1
收藏 0
点赞 0
评论 0

#pragma mark 结构体和函数 ###pragma mark 概念 /** 结构体之间赋值 是 值传递, 相当于拷贝 主要看函数的 形参 如果是 数据类型 就是 值传递 如果是 地址 就是 就会影响外面的 实参 */ ###pragma mark 代码

#include <stdio.h>
struct Person {
    int age;
    char *name;
};
//void change (int value);
//void change(struct Person value);
void change(struct Person *value);

int main()
{
#warning 结构体和函数 传递结构体

    /*
    struct Person sp = {24,"lyh"};
    
    // 1.将结构体的属性传递给函数, 在函数中修改形参 不会影响实参
    printf("age = %i\n",sp.age);
//    change(sp.age);
    // 2.将结构体名称 作为参数传递, 在函数中修改形参不会影响到实参
    // 结构体之间赋值 是值传递, 系统会将A结构体的值 拷贝一份 到 B结构体中
    change(sp);
    printf("age = %i\n",sp.age);
     */
    
    /*
    struct Person sp1 = {24,"lyh"};
    struct Person sp2 = sp1;    // 结构体之间赋值 是 值传递, 相当于拷贝
    
    printf("sp1.age = %i\n",sp1.age);
    sp2.age = 998;
    printf("sp1.age = %i\n",sp1.age);
    printf("sp2.age = %i\n",sp2.age);
    */
#warning 结构体和函数 传递结构体指针
    struct Person sp1 = {24,"lyh"};
    printf("sp1.age = %i\n",sp1.age);
    change(&sp1);
    printf("sp1.age = %i\n",sp1.age);

    return 0;
}
//void change (int value)
// 结构体有作用域 要放到全局变量
//void change(struct Person value)
void change(struct Person *value)

{
//    value = 99;
    value->age = 100;
}

© 著作权归作者所有

共有 人打赏支持
lyh2017iOS
粉丝 1
博文 357
码字总数 137380
作品 0
朝阳
二十一、结构体

说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经验,或者对C语言、iOS开发不感兴趣,请忽略 C语言的核心部分都...

长平狐
2013/03/28
258
0
C语言基础-13-结构体

C语言的核心部分都说得七七八八了,相信大家已经对C语言的基本数据类型(charintfloat)、数组、指针都很熟悉了,今天来学习C语言中另外一种数据类型:结构体。在iOS开发中,结构体是经常用到的...

Corwien
2016/03/16
10
0
二十三、typedef

说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经验,或者对C语言、iOS开发不感兴趣,请忽略 这讲介绍C语言中很...

长平狐
2013/03/28
138
0
深入理解C语言结构体成员变量内存分配

欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列博客。 1 问题描述 在学习C语言的时候,我们都会频繁的接触到结构体,使用结...

算法与编程之美
04/05
0
0
重新认识C语言

1.缘起 接触C语言有三四年时间了,工作中也一直使用C语言。但对于一些C语言的特性和定义还存在一些疑问,这里总结一下,作为以后参考。 2.C语言的链接属性 工作中无意发现了C语言一个有趣的问...

zhanglianpin
2015/07/06
0
0
JavaScript 30天每日效果图

JavaScript 30天每日效果图 在Github上看到了wesbos的一个Javascript30天挑战的repo,旨在使用纯JS来进行练习,不允许使用任何其他的库和框架,该挑战共30天,我会在这里复现这30天遇到的挑战...

黎跃春
2017/07/19
0
0
C语言基础-15-typedef

这讲介绍C语言中很常用的一个关键字---typedef。 一、typedef作用简介 * 我们可以使用typedef关键字为各种数据类型定义一个新名字(别名)。 #include <stdio.h> typedef int Integer;typedef...

Corwien
2016/03/16
12
0
分享27本关于C语言方面的学习书籍(免费下载)

分享27本关于C语言方面的学习书籍(免费下载) 1、C语言常见问题集 2、C语言程序设计(第三版) 3、C语言高级编程技术 4、C语言基础 5、C语言入门经典(中文版) 6、C语言深度解剖 7、C语言字符数...

邓剑彬
2012/12/03
1K
8
C语言新手入门学习经验分享,基础知识大汇总!

C语言是面向过程的,而C++是面向对象的 相信这么努力的你 已经置顶了我 学习C语言始终要记住“曙光在前头”和“千金难买回头看”,“千金难买回头看”是学习知识的重要方法,就是说,学习后...

小辰带你看世界
01/05
0
0
Android NDK开发之旅 目录

Android NDK开发之旅 目录 Android NDK开发之旅1--NDK介绍 Android NDK开发之旅2--C语言--基本数据类型 Android NDK开发之旅3--C语言--指针 Android NDK开发之旅4--C语言--动态内存分配 Andr...

香沙小熊
2017/12/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

(转)SQL语句的执行顺序

(7) SELECT (8) DISTINCT <select_list> (1) FROM <left_table> (3) <join_type> JOIN <right_table> (2) ON <join_condition> (4) WHERE <where_condition> (5) GROUP BY <group_by_list> (......

Avner
14分钟前
0
0
1.14 救援模式

确保开机启动时连接镜像文件,如果是真机服务器,就需要:U盘或光盘镜像启动进入BIOS 不同主板进入bios按键不同,一般是F12或Esc 光标:移动到Boot(开机启动项) 减号移动:光标选中行,按-...

小丑鱼00
22分钟前
0
0
ES11-全文检索

高级别全文检索通常用于在全文本字段(如电子邮件正文)上运行全文检索。 他们了解如何分析被查询的字段,并在执行之前将每个字段的分析器(或search_analyzer)应用于查询字符串。 1.term查...

贾峰uk
25分钟前
0
0
java 复制对象有哪些方式

java 复制对象有哪些方式 Apache的 Common beanutils库 org.apache.commons.beanutils.BeanUtils.copyProperties(dest,origin); Springframework 的BeanUtil 依赖: <dependency> ......

黄威
40分钟前
1
0
jstack的简单使用

公司测试反应, 一个java应用的机器, 即使不做交易, cpu始终是30%多, 于是想到了jstack, 实践步骤记录一下: 1, 找出java应用的进程号 ps -ef|grep 应用名|grep -v grep 2, 找出pid下的cpu占用...

零二一七
47分钟前
1
0
崛起于Springboot2.X之项目war打包部署(18)

将springboot项目打包步骤: 1、启动类 extends SpringBootServletInitializer 2、启动类添加覆盖方法 @Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder......

木九天
56分钟前
2
0
导入CSV文件就行数据整理分析

#-*-coding:utf-8-*-import csv,os,re,mathlocalPath=input("请输入所有群文件的根目录:") #所有QQ群文件的物理根目录路径def info(): info_dic=[] dirList=os.listdi...

Kefy
今天
5
0
CoreText进阶(六)-内容大小计算和自动布局

CoreText进阶(六)-内容大小计算和自动布局 其它文章: CoreText 入门(一)-文本绘制 CoreText入门(二)-绘制图片 CoreText进阶(三)-事件处理 CoreText进阶(四)-文字行数限制和显示更...

aron1992
今天
1
0
一个Unity高人的博客,涉猎范围很广,深度也很深。

https://blog.csdn.net/ecidevilin/article/list/

爽歪歪ES
今天
0
0
Spring Cloud Config-Git后端

EnvironmentRepository的默认实现使用Git后端,这对于管理升级和物理环境以及审核更改非常方便。要更改存储库的位置,可以在Config Server中设置“spring.cloud.config.server.git.uri”配置...

itcloud
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部