技术专栏
最近在看海思SDK中关于imx274_sensor_ctl.c代码中,如何快速初始化数组为同一值
一般快速初始化数组会用到mmset 或者手动一个一个赋值,今天我们来讲讲另一种方法。
这个方法是我在从海思发布的SDK包中学来的,一开始我还不明白为什么他的代码要这样子写:
static int g_fd[ISP_MAX_PIPE_NUM] = { [0 ...(ISP_MAX_PIPE_NUM - 1)] = -1 };
看这行代码的时候我是毫无头绪,为此也上网查了很多资料,包括 “…” 的用法,
虽然以前在main函数接受参数的时候看过“…” 大概就是说让main函数接受可变的参数个数。但是“…”出现在这里我就搞不明白了。
因为海思的后面的代码有用到这个数组的元素,而且没有初始化数组,所以我在想这样子的写法是不是一种快速初始化的方法,为此我做了一个例程去验证我的猜想。
#include<stdio.h>
#define NUM 10
int main()
{
int a[NUM]={[0 ...(NUM - 1)] = -1};
int i =0;
for(;i<10;i++)
{
printf("%d",a[i]);
}
return 0;
}
输出结果为:-1-1-1-1-1-1-1-1-1-1
我觉得这个方法很神奇,除此之外初始化部分数组成员为不同的值也可以用这个方法。
#include<stdio.h>
#define NUM 10
int main()
{
int a[NUM]={[0 ...5] = -1,[5 ... 9]=2};
int i =0;
for(;i<10;i++)
{
printf("%d",a[i]);
}
}
输出为:-1-1-1-1-122222
转载:https://blog.csdn.net/weixin_44794688/article/details/104746882
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包
1
收藏
评论
打赏
- 分享
- 举报
评论
0个
手气红包
暂无数据
相关专栏
-
浏览量:10471次2020-08-03 14:27:03
-
浏览量:7434次2021-08-11 16:51:39
-
浏览量:923次2023-03-01 11:22:14
-
浏览量:594次2024-01-25 16:37:07
-
浏览量:3620次2020-08-14 11:35:53
-
浏览量:1222次2024-02-26 13:58:45
-
2024-01-02 18:00:05
-
浏览量:5238次2020-08-11 10:30:44
-
浏览量:3795次2020-08-11 10:29:05
-
浏览量:4117次2020-08-14 11:25:29
-
浏览量:1670次2024-01-08 17:24:15
-
浏览量:5961次2021-06-03 17:33:36
-
浏览量:1389次2024-01-09 17:43:28
-
浏览量:1456次2023-12-29 16:51:41
-
浏览量:2096次2023-12-27 15:27:59
-
浏览量:1242次2023-12-26 14:55:57
-
浏览量:18409次2020-08-25 11:16:34
-
浏览量:2631次2024-03-14 14:15:25
-
浏览量:3513次2020-07-30 11:57:30
置顶时间设置
结束时间
删除原因
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
打赏作者
雨林霖
您的支持将鼓励我继续创作!
打赏金额:
¥1
¥5
¥10
¥50
¥100
支付方式:
微信支付
打赏成功!
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
审核成功
发布时间设置
发布时间:
请选择发布时间设置
是否关联周任务-专栏模块
审核失败
失败原因
请选择失败原因
备注
请输入备注