硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1319|回复: 8
收起左侧

[STM32H7] 给结构体赋值,这种语法

[复制链接]

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
发表于 2022-8-3 17:21:07 | 显示全部楼层 |阅读模式
[C] 纯文本查看 复制代码
/* Note:it should use the C99 standard when compiling the below codes */
/* USB standard device descriptor */
const usb_descriptor_device_struct device_descripter =
{
    .Header = 
     {
         .bLength = USB_DEVICE_DESC_SIZE, 
         .bDescriptorType = USB_DESCTYPE_DEVICE
     },
    .bcdUSB = 0x0200,
    .bDeviceClass = 0x00,
    .bDeviceSubClass = 0x00,
    .bDeviceProtocol = 0x00,
    .bMaxPacketSize0 = USBD_EP0_MAX_SIZE,
    .idVendor = HID_USBD_VID,
    .idProduct = HID_USBD_PID,
    .bcdDevice = 0x0100,
    .iManufacturer = USBD_MFC_STR_IDX,
    .iProduct = USBD_PRODUCT_STR_IDX,
    .iSerialNumber = USBD_SERIAL_STR_IDX,
    .bNumberConfigurations = USBD_CFG_MAX_NUM
};



看别人写的usb库,这个给结构体赋值,的语法一直没见过,这种赋值方法叫什么名字呢?有没有相关的讲解或者出处?
回复

使用道具 举报

21

主题

287

回帖

350

积分

高级会员

积分
350
发表于 2022-8-3 17:44:52 | 显示全部楼层
指定初始化,C99语法
回复

使用道具 举报

5

主题

184

回帖

199

积分

高级会员

积分
199
发表于 2022-8-3 17:52:39 | 显示全部楼层
出处都在C标准,很常用的写法
回复

使用道具 举报

43

主题

224

回帖

353

积分

高级会员

积分
353
发表于 2022-8-3 18:04:57 | 显示全部楼层
GCC自带,高端大气上档次
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
111540
QQ
发表于 2022-8-3 18:07:44 | 显示全部楼层
snakeemail 发表于 2022-8-3 18:04
GCC自带,高端大气上档次

这个是C99标准,C99已经很老了,1999年的,市面上的编译器都支持。
回复

使用道具 举报

96

主题

297

回帖

585

积分

金牌会员

123

积分
585
 楼主| 发表于 2022-8-3 18:09:29 | 显示全部楼层
eric2013 发表于 2022-8-3 18:07
这个是C99标准,C99已经很老了,1999年的,市面上的编译器都支持。

这种写法,可靠吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
111540
QQ
发表于 2022-8-3 18:22:43 | 显示全部楼层
ssssssss 发表于 2022-8-3 18:09
这种写法,可靠吗?

靠谱,这个是C99标准要求写法,各种编译器都支持的。
C99标准说明:

image.png

回复

使用道具 举报

98

主题

350

回帖

644

积分

金牌会员

积分
644
发表于 2022-8-3 21:50:37 | 显示全部楼层
初始化结构体变量的时候总这么干,对于结构体中的联合体附初值也可以这么做,很方便。
回复

使用道具 举报

6

主题

659

回帖

677

积分

金牌会员

积分
677
QQ
发表于 2022-8-4 23:22:37 | 显示全部楼层
1659626522316.png ,编写驱动一值习惯这个写法
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-11-1 07:48 , Processed in 0.252063 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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