1. 说明

1)相同类型结构体变量可以直接赋值

2)在结构体中定义一个数组,可以用赋值语句拷贝整个数组,这也是数组间赋值的一个间接实现方式

3)在结构体中定义一个数组,可以传值调用的方法把它传递给函数做实参

4)在结构体中定义一个数组,可以作为函数的返回类型

2. 代码:

#include <stdio.h>#define LEN 5struct array_tag
{int a[10];
};void print_arry(int a[], int len)
{int i = 0;for(i=0; i<len; i++){printf("%d ",a[i]);}printf("\n");
}struct array_tag fun(struct array_tag test)
{test.a[0] = 100;return test;
}int main(void){struct array_tag m = {{1,2,3,4,5}};struct array_tag n, y;print_arry(m.a, LEN);n = fun(m);print_arry(n.a, LEN);y = m;print_arry(y.a, LEN);return 0;
}

3. 运行:

baoli@ubuntu:~/c$ ./a.out1 2 3 4 5100 2 3 4 51 2 3 4 5

C语言高级编程:结构体中定义数组的“妙用”相关推荐

  1. C语言 如何给结构体中的数组赋值

    说明: 在建立socke通信的t过程中,我想将所有变量都封装在一个结构体中,但是其中 IP地址需要数组保存,无法直接赋值: 偶然间看到了处理方式 示例 #include <stdio.h> ...

  2. C语言中的指针应用,函数指针,指针函数,结构体中定义函数指针。

    指针函数 指针函数就是一个返回指针的函数,其本质是一个函数,该函数的返回值是一个指针. 声明一个指针函数 int* fun(int x,int y); 例子 typedef struct _Data{ ...

  3. C语言结构体中定义函数指针详解

    C语言结构体中定义函数指针详解 结构体指针函数应用场景之一--驱动程序编写 结构体的一些基本用法 形式1:先定义结构体类型,再定义变量 形式2:在定义类型的同时定义变量 形式3:直接定义变量,用无名结 ...

  4. 【VS开发】【编程开发】【C/C++开发】结构体中的数组与指针的内存分配情况说明...

    [VS开发][编程开发][C/C++开发]结构体中的数组与指针的内存分配情况说明 标签:[VS开发] [编程开发] 主要是疑惑在结构体定义的数组的内存空间与指针动态分配的内存空间,在地址上连续性.以及 ...

  5. C++结构体中定义虚拟函数

    C++结构体中定义虚拟函数 C++中一个结构体可以包含函数(这个函数在C++我们通常中称为成员函数),C++中的结构体体现了数据结构和算法的结合.类可以从结构体继承.如下列示例: #ifndef PU ...

  6. c语言中结构体类型定义的函数指针,结构体中定义函数指针

    结构体指针变量的定义 定义结构体变量的一般形式如下:形式1:先定义结构体类型,再定义变量struct 结构体标识符{ 成员变量列表;-};struct 结构体标识符 *指针变量名;变量初始化:stru ...

  7. c++结构体定义和使用_【C语言更新】结构体的定义及使用

    文/Edward首先先思考一个问题,假设某一天你去了一家策划公司,接到了一个策划需求,比如为新上市的某款手机写一个市场推广的文案,并且在电脑上面打印出来.那么在写这个文案的时候,你肯定是会需要着重地去 ...

  8. 结构体中定义函数指针

    结构体指针变量的定义,定义结构体变量的一般形式如下: 形式1:先定义结构体类型,再定义变量 struct结构体标识符 { 成员变量列表;- }; struct 结构体标识符 *指针变量名; 变量初始化 ...

  9. C语言学习笔记---结构体的定义和初始化

      在C语言中结构体通常用来将不同类型的变量打包在一起,方便对对象的统一管理. 结构体定义   要使用结构体时,首先要进行结构体的声明.声明的形式如下: struct 结构体名{ 结构体所包含的变量} ...

最新文章

  1. 【C++】函数指针的嵌套
  2. 会写代码是你创业路上的包袱吗?
  3. 浅谈.NET中的类型和装箱、拆箱原理
  4. python里有常量吗?(没有,但可自行定义)
  5. springboot使用imageio返回图片_SpringBoot 二维码生成(复制即用)
  6. input的type为number
  7. 类的本质 Objective-C基础
  8. mysql时间函数总结_MySQL 日期时间函数常用总结
  9. ppt2003 未找到 mathpagewll 53_steam每日特惠:《伊拉图斯:死之主》今日史低53元
  10. Anacoda 介绍、安装、环境切换
  11. android卸载弹出窗口,卸载Android app弹出浏览器的一种实现
  12. vector 实现二维数组
  13. 为何甲骨文裁员,偏偏要选中国人?
  14. 用C++写洛谷P1427小鱼的数字游戏
  15. 闲聊人工智能产品经理(AIPM)—人工智能产品需求
  16. 用代码在最短时间做成事
  17. html用if函数,if函数怎么用的实例
  18. 华为交换机测试吞吐量软件,华为选择Spirent验证最新数据中心交换机的性能
  19. 【React】React 详细教程
  20. npm list 报错 extraneous

热门文章

  1. 谷歌验证 (Google Authenticator) 的实现原理是什么?
  2. 【独家:震惊!——西城区所有学区优质度透解与大排名,泄密了!】
  3. mysql做主从复制配置案例
  4. SSH Secure Shell显示GCC编译错误信息乱码解决方法
  5. Ubuntu16.04 php7.0+mysql5.7+apache2环境搭配
  6. css 列 布局,CSS二列三列布局
  7. vmware安装ubuntu13版本的vm tools时遇到的错误解决
  8. 后台接收数组_微信小程序如何与后台api接口进行数据交互(微信报修小程序源码讲解七)...
  9. python文件行数统计_文件行数和代码行数统计
  10. php 如何获取表格数据类型,使用phpword获取doc中的表格数据