[其它应用] C语言中的结构体三种定义方法

[复制链接]
2103|9
 楼主| 旧时光放映机 发表于 2025-4-6 16:23 | 显示全部楼层 |阅读模式
本帖最后由 旧时光放映机 于 2025-4-5 21:16 编辑

1. 先定义结构体类型,再定义结构体变量
  1. // 定义结构体类型
  2. struct Student {
  3. char name[50];
  4. int age;
  5. float score;
  6. };

  7. struct Student stu1;

2.定义结构体类型的同时定义结构体变量
  1. // 定义结构体类型的同时定义结构体变量
  2. struct Student {
  3.     char name[50];
  4.     int age;
  5.     float score;
  6. } stu1;
3. 匿名结构体
  1.    struct {
  2.         char name[50];
  3.         int age;
  4.         float score;
  5.     } stu1;

laocuo1142 发表于 2025-4-8 14:11 | 显示全部楼层
在C语言中,结构体是一种用户自定义的数据类型,允许将不同类型的数据组合在一起。
flycamelaaa 发表于 2025-4-9 14:00 | 显示全部楼层
结构体和数组的定义方式有什么区别吗
LOVEEVER 发表于 2025-5-26 15:45 | 显示全部楼层
结构体数据结构的一种方式
tpgf 发表于 2025-5-27 09:03 | 显示全部楼层
#include <stdio.h>

// 定义结构体类型
struct Student {
    int id;
    char name[50];
    float score;
};

int main() {
    // 定义结构体变量
    struct Student s1, s2;

    // 访问和操作结构体成员
    s1.id = 1;
    snprintf(s1.name, sizeof(s1.name), "Alice");
    s1.score = 90.5;

    printf("Student 1: ID=%d, Name=%s, Score=%.1f
", s1.id, s1.name, s1.score);

    return 0;
}
szt1993 发表于 2025-5-27 11:09 | 显示全部楼层
结构体定义很实用的设计
小岛西岸来信 发表于 2025-6-27 22:49 | 显示全部楼层
C 语言结构体有三种定义方法:
标准定义:先声明类型,再实例化变量,如struct Person {char name[20]; int age;}; struct Person p1;。
匿名定义:省略类型名,直接创建变量,如struct {char name[20]; int age;} p2;(无法复用类型)。
typedef 定义:用 typedef 创建别名简化使用,如typedef struct {char name[20]; int age;} Person; Person p3;(最常用)。
星辰伴梦 发表于 2025-6-28 11:03 | 显示全部楼层
第一种方法是先定义结构体类型,再定义变量,这种方式比较清晰,易于管理。
中国龙芯CDX 发表于 2025-6-28 11:57 | 显示全部楼层
结构体其实就是类的前身
老橘树下的桥头 发表于 2025-8-27 13:21 | 显示全部楼层
1.先定义结构体类型再声明变量;2. 定义类型同时声明变量;3. 匿名结构体直接声明变量,省去类型名,仅能当即用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

200

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部