gpt4 book ai didi

win32 COORD 结构的编译器错误?

转载 作者:太空宇宙 更新时间:2023-11-04 01:37:13 24 4
gpt4 key购买 nike

我正在尝试使用 Win32 控制台 API 在 Windows 中为控制台应用程序实现进度条。我的问题是编译器给出了错误,error C2059: syntax error : 'constant'。相关代码如下。

void updateBar(PBAR * pbr, float ratio){
COORD pos;
pos.X = 0;
pos.Y = 25;

SetConsoleCursorPosition(hConOut, pos);
}

COORD 是表示坐标对的 Win32 结构。 hConOut 是一个全局变量,PBAR 是一个结构体。对于两次分配(pos.X = 0 和 pox.Y = 25),上述错误被给出两次。如果我使用以下内容,它会完美编译。

void updateBar(PBAR * pbr, float ratio){
COORD pos = {0, 25};
SetConsoleCursorPosition(hConOut, pos);
}

我实在想不明白这是为什么。我的意思是这只是对结构成员的分配,对吧??如果我做类似 POINT pt; 的事情pt.x = 0; pt.y = 25,编译完美。 POINT 只是另一种结构。

我在 Windows 7 上使用 visual studio 2010,编译器是:

Microsoft (R) 32 位 C/C++ 优化编译器版本 16.00.30319.01 for 80x86

有什么想法吗??提前致谢。

最佳答案

我编译了这个,它工作正常。

但是,如果我将 X 或 Y 定义为宏,例如

#define X 2
#define Y 15

然后我得到和你完全一样的错误。你有这些宏吗?

关于win32 COORD 结构的编译器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12425710/

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