嵌入式第五课-c语言结构体

Posted Soaring2020

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式第五课-c语言结构体相关的知识,希望对你有一定的参考价值。

1结构体数组

#include <stdio.h>

#define ARRYA_SIZE(a)  (sizeof(a)/sizeof(a[0]))
typedef struct student
        char name[50];
        int  age;
        int  sex;
stu_t;
int main(void)

        stu_t info[] =
               
                        .sex = 18,
                        .age = 18,
                        .name = "hello"
                ,
               
                        .sex = 12,
                        .age = 19,
                        .name = "world!"
               
        ;
        for(int i =0 ;i<ARRYA_SIZE(info);i++)
       
                printf("%s %d %d \\r\\n",info[i].name,info[i].age,info[i].sex);
       
        return 0;

2j结构体函数指针

#include <stdio.h>
typedef struct student stu_t;
typedef void(*_pfunc_t)(stu_t *);
#define ARRYA_SIZE(a)  (sizeof(a)/sizeof(a[0]))
typedef struct student
        char name[50];
        int  age;
        int  sex;
        _pfunc_t pfunc;
stu_t;
void show(stu_t *stu);
void show2(void);

int main(void)

        stu_t info[] =
               
                        .sex = 18,
                        .age = 18,
                        .name = "hello",
                        .pfunc = show
                ,
               
                        .sex = 12,
                        .age = 19,
                        .name = "world!",
                        .pfunc = show2
               
        ;
        printf("info 0 show:");
        info[0].pfunc(&(info[0]));
        printf("info 1 show2:");
        info[1].pfunc(&(info[0]));
        printf("for output:");
        for(int i =0 ;i<ARRYA_SIZE(info);i++)
       
                printf("%s %d %d \\r\\n",info[i].name,info[i].age,info[i].sex);
       
        return 0;

void show(stu_t *stu)

     printf("%s %d %d \\r\\n",stu->name,stu->age,stu->sex);

void show2(void)

     printf("hello world!\\r\\n ");

 

执行结果:

嵌入式第四课—C语言文件操作 :https://blog.csdn.net/qq_21919455/article/details/117259838

嵌入式第六课——数据结构和算法-栈与循环队列  https://blog.csdn.net/qq_21919455/article/details/117280432

以上是关于嵌入式第五课-c语言结构体的主要内容,如果未能解决你的问题,请参考以下文章

嵌入式第五课-c语言结构体

golang语言学第五课:函数

【嵌入式C】在Keil中结构体的字节对齐

嵌入式 Linux C语言——结构体

C语言 | 结构体内存对齐

Golang✔️走进 Go 语言✔️ 第五课 类型转换