结构体笔记

结构体

1.声明结构体变量

在main函数前声明结构体变量

struct 结构体名称 {
int a;
long b;
char d;
};

也可以不加名字,形成匿名结构体,

struct  {
int a;
long b;
char d;
};

但该结构体不可直接使用,一般只用一次。
若想使用,则在大括号后加上b变量m名

struct  {
int a;
long b;
char d;
}st1,st2;

若不想再之后使用结构体时重复打struct,可以使用typedef函数来声明结构体

typedef struct {
int a;
long b;
char d;
}结构体名称;

2.如何给结构体变量赋值

例如

#include<stdio.h>
typedef struct {
    int a;
    long b;
    char d[15];
} ;
int main(){
    st st1 ={12, 34567, "Hello World"};

return 0 ;
}

在这里,我们就给a值赋值12,给b赋值34567,给d赋值"Hello World"
赋值格式为

结构体名称 变量名 = {值1, 值2, 值3……};

调用时则是

结构体变量名.结构体内变量名

例如我们想输出st1中的b,则

printf("%ld",st1.b);

在函数中调用则是用指针,首先讲如何声明结构体指针,以上述为例

st *pst1 = &st1;

在函数中调用结构体内变量则是用箭头而不是点

void add(st *pst){
    int a = 0;
    a = (int)pst->b + 1
    printf("%d",a)

}

结构体内存大小计算:由于结构体存在内存对齐,结构体内存为变量数*占内存最大变量的1内存。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值