gpt4 book ai didi

C++ 只输出一位小数

转载 作者:行者123 更新时间:2023-11-28 00:20:20 25 4
gpt4 key购买 nike

我有一个设置为 4.5 的 float ,但是当我将它渲染到屏幕上时它显示 4.500000。我尝试使用谷歌搜索和搜索 stackoverflow,但所有答案都使用 printf() 或 std::cout,我不能使用它们,因为我不想将它输出到控制台。很抱歉这个 nooby 问题,这里是代码:

TextRenderer::render(*window, std::to_string(player->health) + " HP", sf::Vector2f(3, 0), 16, sf::Color(155, 0, 0));

编辑:TextRenderer.cpp

#include "TextRenderer.h"
#include <SFML/Graphics.hpp>
#include <string>
#include "Logger.h"

sf::Font TextRenderer::kavoon = sf::Font();

TextRenderer::TextRenderer()
{
}

TextRenderer::~TextRenderer()
{
}

bool TextRenderer::load() {
if (!TextRenderer::kavoon.loadFromFile("data/fonts/kavoon.ttf"))
{
Logger::error("Couldn't load kavoon font.");
}
return true;
}

void TextRenderer::render(sf::RenderWindow& window, std::string string, sf::Vector2f position, int size, sf::Color color) {
sf::Text text;

text.setFont(TextRenderer::kavoon);
text.setString(string);

text.setPosition(position);

text.setCharacterSize(size);
text.setColor(color);

window.draw(text);
}

最佳答案

您可以使用 ostringstream 来执行此操作。

ostringstream ss;
ss << player->health;
string health = ss.str();

然后

TextRenderer::render(*window, health + " HP", sf::Vector2f(3, 0), 16, sf::Color(155, 0, 0));

关于C++ 只输出一位小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27802555/

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