Qt中qDebug()输出不换行

其实这个qDebug()函数里面的换行是写死了的,所以如果需要不换行输出内容的话需要修改源码。。。

  • 可以大致看一下qDebug()源码,好像它本身就有换行的机制
void qt_message_output(QtMsgType msgType, const char *buf)
{
    if (handler) {
        (*handler)(msgType, buf);
    } else {
        fprintf(stderr, "%s/n", buf);
        fflush(stderr);
    }
}
  • 其实也不是不能改,只是需要尝试重新编译qtcore的模块,替代掉原来的就可以,但是感觉好麻烦……还是别整这个函数了
  • 总的来说还是比较麻烦的,还不如直接使用std::cout或者printf直接格式化输出呢,你们jiong的呢

参考:https://www.qter.org/forum.php?mod=viewthread&tid=12207

你可能感兴趣的:(qt,c++,qt5)