首页 > 解决方案 > 如何从字符串文字和附加的 int 或 long 值有效地创建 const c 字符串

问题描述

在 c++ 中,如何有效地基于文字和附加的 long/int 值创建 ac 字符串?我在逻辑上想做这样的事情:

const char *sql = "select * from MyTable where ID = " + longId;

其中 longId 是一个 int/long 参数。

标签: c++stringintappend

解决方案


鉴于所提出的问题,我认为 HS 的答案是完美的。仅供参考,因为我使用的是 Qt(我在 OP 中没有提到),所以我最终使用了以下代码:

QString sql = QStringLiteral("SELECT v.drive_path_if_builtin, "
                                    "m.full_filepath "
                             "FROM media_table m "
                             "INNER JOIN volume_table v "
                                     "ON (v.id = m.volume_id) "
                             "WHERE m.id = %1;").arg(id);

...然后在需要 c 字符串的适当位置,我使用了qPrintable(sql).


推荐阅读