Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
嵌入式技术综合讨论
请教两个C语言的问题[已解决]
发布于 2012-07-12 08:58:10 浏览:7387
订阅该版
1、关于指针数组赋值 ``` static const char const *da850_evm_ui_exp[] = { [DA850_EVM_UI_EXP_SEL_C] = "sel_c", [DA850_EVM_UI_EXP_SEL_B] = "sel_b", [DA850_EVM_UI_EXP_SEL_A] = "sel_a", [DA850_EVM_UI_EXP_PB8] = "pb8", [DA850_EVM_UI_EXP_PB7] = "pb7", [DA850_EVM_UI_EXP_PB6] = "pb6", [DA850_EVM_UI_EXP_PB5] = "pb5", [DA850_EVM_UI_EXP_PB4] = "pb4", [DA850_EVM_UI_EXP_PB3] = "pb3", [DA850_EVM_UI_EXP_PB2] = "pb2", [DA850_EVM_UI_EXP_PB1] = "pb1", }; ``` 2、关于结构体数组赋值 ```static struct gpio_keys_button da850_evm_ui_keys[] = { [0 ... DA850_N_UI_PB - 1] = { .type = EV_KEY, .active_low = 1, .wakeup = 0, .debounce_interval = DA850_KEYS_DEBOUNCE_MS, .code = -1, /* assigned at runtime */ .gpio = -1, /* assigned at runtime */ .desc = NULL, /* assigned at runtime */ }, };``` C语言功底较浅,请明白的人指点一下。
查看更多
9
个回答
默认排序
按发布时间排序
haitao52198
2012-07-12
这家伙很懒,什么也没写!
>1、关于指针数组赋值 > > >``` > >static const char const *da850_evm_ui_exp[] = { > [DA850_EVM_UI_EXP_SEL_C] = "sel_c", > [DA850_EVM_UI_EXP_SEL_B] = "sel_b", > [DA850_EVM_UI_EXP_SEL_A] = "sel_a", > [DA850_EVM_UI_EXP_PB8] = "pb8", > [DA850_EVM_UI_EXP_PB7] = "pb7", > [DA850_EVM_UI_EXP_PB6] = "pb6", > [DA850_EVM_UI_EXP_PB5] = "pb5", > [DA850_EVM_UI_EXP_PB4] = "pb4", > [DA850_EVM_UI_EXP_PB3] = "pb3", > [DA850_EVM_UI_EXP_PB2] = "pb2", > [DA850_EVM_UI_EXP_PB1] = "pb1", >}; > >``` > > > >2、关于结构体数组赋值 > > >``` >static struct gpio_keys_button da850_evm_ui_keys[] = { > [0 ... DA850_N_UI_PB - 1] = { > .type = EV_KEY, > .active_low = 1, > .wakeup = 0, > .debounce_interval = DA850_KEYS_DEBOUNCE_MS, > .code = -1, /* assigned at runtime */ > .gpio = -1, /* assigned at runtime */ > .desc = NULL, /* assigned at runtime */ > }, >}; >``` > > >C语言功底较浅,请明白的人指点一下。 --- 这里指针数组赋值用了一个大括号套起来,里面分别赋值的手法还是第一次见到,哪里有讲解这部分知识的呢? 第二个是在第一个的基础上又用了一个...的东西,更是没有见过。虽然功能都能猜得到,但毕竟要求证一下,楼下有哪位高人,给个大概的方向好去找呢?感激涕零啊
lgnq
2012-07-12
这家伙很懒,什么也没写!
我也是第一次看到这样给数组赋初值的,数组元素的下标可以自定义
bernard
2012-07-12
这家伙很懒,什么也没写!
数组这种用法也是第一次见,.field这种很常见,linux kernel中很多。不过.field的写法,Keil MDK貌似支持得不好,所以一般都没这样使用。
Dragon2012
2012-07-12
这家伙很懒,什么也没写!
>数组这种用法也是第一次见,.field这种很常见,linux kernel中很多。不过.field的写法,Keil MDK貌似支持得不好,所以一般都没这样使用。 --- .field这种用法应该是需要编译器支持C99,在keil MDK中使用.field会报错。
luoyuncong
2012-07-13
这家伙很懒,什么也没写!
这是GCC支持的格式,只能用GCC来编译了。不要企望在mdk里能编译通过。
grissiom
2012-07-14
这家伙很懒,什么也没写!
第一种是 C99 的标准做法,包括 .field 用法,在 MDK 里加上 --c99 编译无压力…… 第二种做法是 GNU 扩展,在 MDK 里加上 --gnu 编译无压力…… 两种在我这里都测试通过了,爽啊…… Ref: [http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Designated-Inits.html](http://gcc.gnu.org/onlinedocs/gcc-4.1.2 ... Inits.html)
grissiom
2012-07-14
这家伙很懒,什么也没写!
还有就是 GCC 那个页面里 ``` int whitespace[256] = { [' '] = 1, [' '] = 1, ['h'] = 1, ['f'] = 1, [' '] = 1, [' '] = 1 }; ``` 的写法,碉堡了……
Dragon2012
2012-07-14
这家伙很懒,什么也没写!
>第一种是 C99 的标准做法,包括 .field 用法,在 MDK 里加上 --c99 编译无压力…… > >第二种做法是 GNU 扩展,在 MDK 里加上 --gnu 编译无压力…… > >两种在我这里都测试通过了,爽啊…… > >Ref: [http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Designated-Inits.html](http://gcc.gnu.org/onlinedocs/gcc-4.1.2 ... Inits.html) --- 看了链接中的内容,比较清晰了。谢谢 [s:154]
rttyihui
2015-02-10
这家伙很懒,什么也没写!
不错, [s:154]
撰写答案
登录
注册新账号
关注者
0
被浏览
7.4k
关于作者
Dragon2012
这家伙很懒,什么也没写!
提问
6
回答
13
被采纳
0
关注TA
发私信
相关问题
1
开新板块了! 迅速占领第一帖!
2
有想玩点阵做电子钟的没?手上有屏
3
LED点阵屏硬件保护研究笔记
4
USB相关、Android、Arduino
5
Arduino即将发布ARM平台新产品
6
关于开关电源的同步整流技术
7
rt_thread_wizard使用教程
8
[转]开源如何盈利
9
FM3系列MCU的IO操作笔记。
10
转一个xoolhaha 的寻一起开发的帖子
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
rt-thread 小内存算法源码分析
2
env中添加lvgl软件包后,keil编译包--c99错误
3
【NXP-MCXA153】 定时器驱动移植
4
GD32F450 看门狗驱动适配
5
【NXP-MCXA153】看门狗驱动移植
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
PWM
freemodbus
flash
cubemx
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
rt_mq_消息队列_msg_queue
SFUD
keil_MDK
msh
ulog
C++_cpp
MicroPython
本月问答贡献
踩姑娘的小蘑菇
7
个答案
2
次被采纳
a1012112796
18
个答案
1
次被采纳
红枫
8
个答案
1
次被采纳
Ryan_CW
5
个答案
1
次被采纳
张世争
4
个答案
1
次被采纳
本月文章贡献
YZRD
3
篇文章
6
次点赞
catcatbing
3
篇文章
6
次点赞
lizimu
2
篇文章
12
次点赞
qq1078249029
2
篇文章
2
次点赞
xnosky
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部