我有一个简单的问题,我认为我只是在做一些导致 SEGFAULT 的愚蠢行为。
我只是想将双变量转换为字符串,然后将它们“strcat()”放在一起,并将生成的串联字符串放入 GTK 标签中。(应该很简单吧?!)
这是我的代码的一部分:
double fps_target = 2.71828
std::string fps_target_string;
std::stringstream convert;
convert << fps_target;
fps_target_string = convert.str();
g_print("seg fault occurs below");
label_fps_target = gtk_label_new(strcat("FPS Target: ",
(const char*) fps_target_string.c_str()));
为什么它不能工作?!:(
我尝试使用 Boost::Lexical_Cast 东西,但没有奏效:
double fps_target = 3.14159;
const char* fps_target_string = (const char*) (boost::lexical_cast<std::string>(fps_target));
任何帮助是极大的赞赏。如果任何一种方法都有效,那将是很棒的,但我并不真正关心如何去做,只要我能用字符串得到一个双倍的 cat !