Qt - 获取“警告:格式不是字符串文字且没有格式参数”

发布于 2024-10-04 06:48:25 字数 243 浏览 3 评论 0原文

不断收到诸如这些

qDebug("An error occured while trying to create folder " + workdir.toAscii());

workdir 是 QString() 之类的行的警告

warning: format not a string literal and no format arguments

Keep getting warnings on lines like these

qDebug("An error occured while trying to create folder " + workdir.toAscii());

workdir being QString()

warning: format not a string literal and no format arguments

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

纸短情长 2024-10-11 06:48:25

这可能应该是:

qDebug("An error occured while trying to create folder %s", workdir.constData());

因为 qDebugconst char* 作为第一个参数。

That should probably be:

qDebug("An error occured while trying to create folder %s", workdir.constData());

since qDebug takes const char* as first argument.

赠我空喜 2024-10-11 06:48:25

使用 qDebug 进行调试时,我发现以下语法更容易:

qDebug() << "An error occured while trying to create folder" << workdir;

为此,您需要包含 标头。

更多信息:有关 qDebug() 的 Qt 文档

When debbuging with qDebug, I find the following syntax much easier :

qDebug() << "An error occured while trying to create folder" << workdir;

To do this, you'll need to include the <QtDebug> header.

More info : Qt docs regarding qDebug().

两仪 2024-10-11 06:48:25

我设法让它正常工作而不发出警告,如下所示:

qDebug("An error occurred while trying to create folder %s", qUtf8Printable(workdir));

I managed to get it to work fine without warning like this :

qDebug("An error occurred while trying to create folder %s", qUtf8Printable(workdir));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文