我想要一个 int 值作为字符串显示在屏幕上。这是我在 opengl 中做的游戏。我有这样的东西:
char *string = "0"; // to declare
sprintf (label,"%d" ,string); // This prints 0
这非常适合在屏幕上打印 0,但是正如您可能理解的那样,我希望 0 发生变化。我尝试将 int 转换为字符串并尝试将其分配给 char *string,但我认为这是不可能的。我是 C++ 的新手,所以我不太了解我非常感谢你的帮助。我想要实现的是:
char *string = "0"; // to declare
int number = 90; // declare int to be converted;
sprintf (label,"%d" ,string); // This prints 90
我找到了将 int 方法转换为 char 方法的方法,但是没有解决我的问题。感谢您提前提供的所有帮助。
最佳答案
如果您只想在屏幕上打印一个数字,那么您可以流式传输到 std::cout
:
#include <iostream>
int nubmer = ....;
std::cout << number;
否则,您可以将数字流式传输到 std::ostringstream
,并获取底层 const char*
:
std::strimgstream o;
o << number;
const char* string_ = o.str().c_str();
关于c++ - 将 int 转换为 char* 以打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13210271/