C语言结构体struct定义语法及访问成员

结构体struct的定义语法

上一章节中已经介绍了C语言结构体在C语言面向对象的编程中的作用,这一节对此将不再过多地介绍。这里将直接介绍C语言结构体的定义和相关成员的访问语法。其定义语法如下:

struct tag
{
   member1;
   member2;
   ...
   memberN;
} variable-list;  

结构体struct语法解析

C语言结构体使用struct关键字定义:

  • tag:可选,标签名,可以理解为struct定义的结构体的名称;
  • member:结构体的成员,类似于类的属性,因为C语言的结构体可以用来存储不同类型的值(与数组不同),因此member成员的类型也可以是不同的,而且个数可以根据程序开发的需求而自定义;
  • variable-list:结构体实例(变量)列表,这里定义的是全局的变量,与在函数内实例化的结构体形成的局部变量不同;

提示:结构体一般定义在主函数main之外!

结构体定义实例代码

下面定义了一个标签为Fruit的结构体,并实例化、访问其成员,可以观察到,banana为结构体Fruit定义的全局变量,在主函数main中实例化的时候,不需要重新声明,直接引用即可,可以与Fruit的结构体实例apple进行对比,:

#include <stdio.h>
#include <string.h>

struct Fruit
{
    char fruit_name[50];
    char price[50];
}banana;

int main() {
    strcpy(banana.fruit_name,"banana");
    strcpy(banana.price, "2.5");

    struct Fruit apple;
    strcpy(apple.fruit_name,"apple");
    strcpy(apple.price,"5.0");

    printf("香蕉价格:%s\n",banana.price);
    printf("苹果价格:%s\n",apple.price);
    return 0;
} 

代码编译运行,得到输出:

香蕉价格:2.5
苹果价格:5.0

结构体成员访问

C语言的结构体访问,可以使用符号:“.”,具体的可参考上面的实例代码。

免责声明:内容仅供参考,不保证正确性!


全栈后端 / C语言教程 :


















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.