gpt4 book ai didi

C 全局结构错误。赋值困难

转载 作者:行者123 更新时间:2023-11-30 17:43:36 24 4
gpt4 key购买 nike

我在为全局结构(像素[3])赋值时遇到困难。我尝试过使用 typedef 和不使用 typedef 的许多不同组合,但仍然无法弄清楚。我想要三个 flag_struct 类型的像素结构。顶部是我的全局部分和函数原型(prototype): #包括 #包括

struct flag_struct
{
int r;
int g;
int b;
}pixel[3];

bool checkInputs(int argc, int countryCode, int width);
int computeHeight(int width, int countryCode);
void printFlag(int width, int height, int countryCode, struct flag_struct pixel[]);
void make_pixel (int r, int g, int b);
void flagColor(int width, int height, int countryCode);

这是我的代码中的函数,它为我的每一行像素[]提供错误...每个错误状态:错误:â]â token 之前的预期表达式。

void flagColor(int width, int height, int countryCode)
{
if (countryCode == 1)
pixel[] = 0,85,164, 255,255,255,250,60,50;
else if (countryCode == 2)
pixel[] = 0,0,0, 255,0,0, 255,204,0;
else if (countryCode == 3)
pixel[] = 253,185,19, 0,106,68, 193,39,45;

printFlag(width, height, countryCode, pixel);

return;
}

任何帮助都将不胜感激!

最佳答案

可能有较短的版本,但这应该可行。

typedef struct flag_struct
{
int r;
int g;
int b;
} flag_struct;

flag_struct pixel[3];

然后

void flagColor(int width, int height, int countryCode)
{
if (countryCode == 1) {
pixel[0].r = 0;
pixel[0].g = 85;
pixel[0].b = 164;

pixel2[1].r = 255;
//...
pixel[2].b = 50;
}
else if (countryCode == 2) {
// Same as above
}
else if (countryCode == 3) {
// Same as above
}

printFlag(width, height, countryCode, pixel);

return;
}

或者你可以尝试

pixel[0] = (flag_struct) { .r = 255, .g = 255, .b  = 255 };
pixel[1] = (flag_struct) { .r = 255, .g = 255, .b = 255 };
pixel[2] = (flag_struct) { .r = 255, .g = 255, .b = 255 };

关于C 全局结构错误。赋值困难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20207615/

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