C++;-swprintf#U s不';t输出到控制台中的缓冲区 我正在编写一个C++游戏机,我希望能很容易地做菜单。屏幕状态存储在wchar_t*屏幕[屏幕宽度*屏幕高度]中。我写了一个类菜单,应该写入我的屏幕缓冲区以显示记分板。该类有一个draw函数,它获取指向screenbuffer的指针和一些坐标参数。draw函数使用swprintf_s来更改屏幕缓冲区的状态,但是当我运行代码时,它不会输出任何内容。我试图通过传入一个文本来更改swprintf_的调用,但仍然不起作用。但是,当我使用main()中的原始swprintf_时,它就可以工作了 void Menu::draw(wchar_t* screen, int xScreen, int yScreen, int xField, int yField, int xMenu, int yMenu) { for (int i = 0; i < buttons.size(); ++i) { int currentY = yMenu / (buttons.size() + 1) * (i + 1); swprintf_s(&screen[xScreen * currentY + xField + xMenu / 2 - 7], 16, buttons[i].str); } void菜单::绘制(wchar_t*screen、int xsscreen、int ysscreen、int xField、int yField、, int xMenu,int yMenu){ 对于(int i=0;i

C++;-swprintf#U s不';t输出到控制台中的缓冲区 我正在编写一个C++游戏机,我希望能很容易地做菜单。屏幕状态存储在wchar_t*屏幕[屏幕宽度*屏幕高度]中。我写了一个类菜单,应该写入我的屏幕缓冲区以显示记分板。该类有一个draw函数,它获取指向screenbuffer的指针和一些坐标参数。draw函数使用swprintf_s来更改屏幕缓冲区的状态,但是当我运行代码时,它不会输出任何内容。我试图通过传入一个文本来更改swprintf_的调用,但仍然不起作用。但是,当我使用main()中的原始swprintf_时,它就可以工作了 void Menu::draw(wchar_t* screen, int xScreen, int yScreen, int xField, int yField, int xMenu, int yMenu) { for (int i = 0; i < buttons.size(); ++i) { int currentY = yMenu / (buttons.size() + 1) * (i + 1); swprintf_s(&screen[xScreen * currentY + xField + xMenu / 2 - 7], 16, buttons[i].str); } void菜单::绘制(wchar_t*screen、int xsscreen、int ysscreen、int xField、int yField、, int xMenu,int yMenu){ 对于(int i=0;i,c++,console,buffer,C++,Console,Buffer,} 按钮是菜单的矢量,str是菜单文本的矢量。 当我只使用main中的函数时:swprintf_s(&screen[15*nScreenWidth+nFieldWidth+6],16,L“SCORE:%8d”,nScore) 按其应有的产出。有什么建议吗

}

按钮是菜单的矢量,str是菜单文本的矢量。 当我只使用main中的函数时:
swprintf_s(&screen[15*nScreenWidth+nFieldWidth+6],16,L“SCORE:%8d”,nScore)
按其应有的产出。有什么建议吗