c++ - 将 int 转换为 char* 以打印

标签 c++ char int typeconverter

我想要一个 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/

相关文章:

c++ - 如何在 cpp 和 cuda 模块中使用 cuda 类头文件

c - 使用 malloc 分配 char 数组

c - 如何初始化指向不同长度的字符数组的指针数组?

java - 扫描仪 - 使用分隔符正则表达式解析代码值

c++ - 使用正向链接解决 bool 表达式

c++ - 为什么我在 C++ 线程函数调用中得到重复值?

c++ - 简单的 C++ OpenSSL 代码崩溃

wpf - 文本框密码字符

c - 随机 int 1-255 到 C 中的字符

c++ - 函数 stoi 未声明