找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1224|回复: 2
收起左侧

关于C语言数组赋值 宏定义

[复制链接]
ID:155811 发表于 2021-12-15 17:34 | 显示全部楼层 |阅读模式
数组和结构在初始化时可以直接赋值,之后就得一个一个单独进行赋值,很麻烦,
下面的宏定义能简单化,如:

char pp[4];
Fill4Ar(pp, 1,2,3,4);

#define FillAr2(ar,a,b) ar[0]= a; \
                     ar[1] = b
        
#define FillAr3(ar,a,b,c) ar[0]= a; \
                     ar[1] = b; \
                     ar[2]= c                                                                                 
               
#define FillAr4(ar,a,b,c,d) ar[0]= a; \
                     ar[1] = b; \
                     ar[2]= c; \
                     ar[3]= d
                                                                                 
#define FillAr5(ar,a,b,c,d,e) ar[0]= a; \
                     ar[1] = b; \
                     ar[2]= c; \
                     ar[3]= d; \
                                                                                 ar[4]= e

#define FillAr6(ar,a,b,c,d,e,f) ar[0]= a; \
                     ar[1] = b; \
                     ar[2]= c; \
                     ar[3]= d; \
                                                                                 ar[4]= e; \
                                                                                 ar[5]= f

回复

使用道具 举报

ID:301191 发表于 2021-12-16 22:38 | 显示全部楼层
顶一下
回复

使用道具 举报

ID:995781 发表于 2021-12-22 20:12 | 显示全部楼层
挺好,在C++里可以用构造函数实现
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表