美文网首页
c语言中的结构体

c语言中的结构体

作者: c与php | 来源:发表于2016-07-14 19:56 被阅读68次

1、结构体的声明
(1)结构体的关键词是struct
第一种声明

struct Point{
  int x;
  int y;
}; //第一种声明方法

第二种声明

struct Point{
  int x;
  int y;
}p1,p2;

第三种声明

struct {
  int x;
  int y;
}p1,p2;

2、结构体定义变量
在C++语言中类的成员变量可以在类中进行初始化,但是C语言的结构体是不能在结构体中对变量进行初始化,只能在结构外进行初始化。
定义变量

struct Point p1={11,12};

除此之外结构体中的变量还有float,double,char,结构体
结构体之间的赋值

struct Point p3=p1;
//or
struct Point p3;
p3=p1;

结构体成员变量是如何访问的

struct Point p1={11,12};
//用“.”运算符进行访问
printf("p1的值是:%d,%d",p1.x,p1.y);
//用指针访问结构体的变量
struct *p=&p1;
printf(p1的值是:%d,%d",p->x,p->y);
代码.png 运行结果.png

结构体做参数
数组可以做参数传递的是地址,而结构体做参数只是传递值,主函数调用函数结果没有发生改变

struct A{
  int i;
};
A a;
void func1(struct A p)
{
  printf("%d\n",p.i);
  p.i=44;
  printf("%d\n",p.i);
}
void func2(struct A *p)
{
  printf("%d\n",p->i);
  p->i=66;
  printf("%d\n",p->i;
}
int main()
{
  a.i=33;
  strcut A *pt;
  pt=&a;
  func1(a);
  func2(&a);
  func2(pt);
  return 0;
}
结构体做参数.png 结构体做参数运行结果.png

相关文章

  • C语言基础6

    结构体概述 1 在C语言中,结构体(struct)指的是一种数据结构,是C语 言中构造类型的其中之一。 2 在实际...

  • 12-Go语言结构体

    结构体 结构体的基本概念 什么是结构体Go语言中的结构体几乎和C语言中的结构体一模一样都需要先定义结构体类型, 再...

  • 13-GoLang结构体

    结构体 Go语言中的结构体几乎和C语言中的结构体一模一样都需要先定义结构体类型, 再定义结构体变量都是用来保存一组...

  • C语言结构体用法很多,坑也很多

    C语言可谓是编程界的传奇语言,历经几 十 年,依然排名前列。 本文主要说的是C语言中的结构体,结构体是C语言中重要...

  • C结构体、C++结构体 和 C++类的定义和区别

    一 : C语言中的结构体 (1) C语言中的结构体不能为空,否则会报错 要求一个结构或联合至少有一个成员 (2) ...

  • 【OC梳理】结构体、枚举

    结构体(struct) OC中的结构体(struct),其实就是C语言中的结构体(struct)常见使用方法。OC...

  • iOS中编写高效能结构体的7个要点

    结构体是C/C++两种语言中的基础语法, C语言中的结构体只是一个存粹的数据集合类型的描述,它只有数据成员而没有...

  • iOS底层之结构体和类的内存对齐

    结构体是C/C++两种语言中的基础语法, C语言中的结构体只是一个存粹的数据集合类型的描述,它只有数据成员而没有成...

  • 结构体与指针

    1.1 Linux C语言结构体 简介:本课程深入的讲解了C语言中,预处理是怎么回事,结构体和公用体又是如何使用及...

  • C语言-时间函数

    C语言中是怎么获取当前时间的? 结构体tm定义如下:

网友评论

      本文标题:c语言中的结构体

      本文链接:https://www.haomeiwen.com/subject/tbaejttx.html