当前位置:网站首页 > 技术博客 > 正文

c语言如何给结构体数组赋值



目录

一、按照成员变量进行赋值(麻烦,好理解,字符串赋值需要strcpy)

二、对数组整体进行赋值。(一次性需要把所有的都添加进去,不需要strcpy)

       (1) 在声明数组的时候,进行赋值

        (2)对有规律的数据赋值,比如学生结构体的学号是有规律的。

 三、使用输入进行赋值

(1)直接使用for,配合动态分配内存,这里按照数据库的数据类型,我将学号定义为char型,实际上定义为int 即可。

 (2)调用函数赋值,我们知道,结构体数组中,数组有多个元素,每个数组元素又有多个结构体成员变量,所以将每个数组元素用函数分别去赋值。

(3)通过指针给到其他函数去赋值(如果你看到这,才到了精髓,传参赋值)


        这里使用了一个Init函数,为了在进一步说明传参的使用。实际上赋值按照需要放在主函数就行。

        (使用strcpy函数需要添加头文件string.h)

 

       (1) 在声明数组的时候,进行赋值

        可以换行,中间的结构体嵌套需要再次使用花括号括起来(这里没有传参,放在被调函数不能这么赋值)。

 

也可以直接写下去:

 

输出结果:

这里举了个例子,定义了一维数组name,将name传到被调函数的时候,只剩下了首地址,对其进行赋值是[Error] declaration of 'sch name' shadows a parameter  ,就是说缺少参数,因为只有首地址,并不是完整的数组,所以不能这么赋值。

        (2)对有规律的数据赋值,比如学生结构体的学号是有规律的。

 

        依然用学生为例子。

(1)直接使用for,配合动态分配内存,这里按照数据库的数据类型,我将学号定义为char型,实际上定义为int 即可。

 

输出结果:

 (2)调用函数赋值,我们知道,结构体数组中,数组有多个元素,每个数组元素又有多个结构体成员变量,所以将每个数组元素用函数分别去赋值。

 

 输出结果:

(3)通过指针给到其他函数去赋值(如果你看到这,才到了精髓,传参赋值)

 

执行结果:

以上就是赋值的几种方式,我认为我把全部的方式都写全了,收藏一下吧。 (如有不足,请留言,你的留言对我是极大的鼓励)

  • 上一篇: sql渗透原理
  • 下一篇: 标志位v
  • 版权声明


    相关文章:

  • sql渗透原理2024-11-23 21:01:02
  • 计算机发展历程简介2024-11-23 21:01:02
  • buttons css2024-11-23 21:01:02
  • linux usb设备2024-11-23 21:01:02
  • impdp help2024-11-23 21:01:02
  • 标志位v2024-11-23 21:01:02
  • 代码设计思路 示例2024-11-23 21:01:02
  • mq消息中间件有哪些2024-11-23 21:01:02
  • sql游标的使用方法代码2024-11-23 21:01:02
  • crc16校验算法ccitt2024-11-23 21:01:02