gpt4 book ai didi

c - 初始化结构体数组时,逗号表达式的左侧操作数无效

转载 作者:行者123 更新时间:2023-11-30 15:29:42 25 4
gpt4 key购买 nike

这是pixel_t结构

typedef struct pixelType {
unsigned char r; /* red field */
unsigned char g; /* green field */
unsigned char b; /* blue field */
} pixel_t;

我正在尝试初始化 Pixel_t 结构列表,但收到错误消息,指出逗号表达式的左侧操作数无效。这是我初始化它的地方:

pixel_t pixVals[8] = { (pixel_t)(255,255,255), (pixel_t)(255,0,0), (pixel_t)(0,0,255), (pixel_t)(128,0,255), (pixel_t)(0,0,0), (pixel_t)(0,255,0), (pixel_t)(255,128,0), (pixel_t)(255,255,0) };

有什么帮助吗?

最佳答案

正确的语法是:

pixel_t pixVals[8] = { {255, 255, 255}, {255, 0, 0}, 

等等。或者,在 block 范围内,您可以使用结构体文字:(pixel_t){255, 255, 255}

当您使用括号时,您有一个使用逗号运算符的表达式,这意味着丢弃除最右边的操作数之外的所有操作数。

关于c - 初始化结构体数组时,逗号表达式的左侧操作数无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26111226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com