将字符 * 转换为字符串文字
Convert char * to string literal
我想使用带有 #pragma 消息的字符*来告诉我在Visual Studio调试器中的问题在哪里。
void OutputShaderErrors(const char *filename)
{
std::string outputMessage = "Errors written to: ";
outputMessage += filename;
#pragma message(outputMessage.c_str())
}
上面的代码块确实有效,但给出了以下警告:
Warning 1 warning C4083: expected 'string'; found identifier 'outputMessage'
正如#pragma
中的#
所暗示的那样,这是预处理器的一个功能。不能在运行时调用它。代码实际上不起作用,您看到的警告来自您对 #pragma
的无效使用。
由于您使用的是Visual Studio,因此您可能会发现OutputDebugMessage
函数很有用。
相关文章:
- 我可以使用条件运算符初始化C风格的字符串文字吗
- 如何使用字符串文字作为宏参数
- 有没有办法从非C/C++文件中读取C++原始字符串文字的内容
- 构造<int>具有 2 个字符串文字的向量
- 初始化或分配空字符串文字到指向 C 中的 char 的指针或指向 C++ 中 const char 的指针的原因是什么
- 方便地对C++中的所有字符串文字进行模糊处理
- 比较 std::string 和 C 样式字符串文字
- 如何从char16_t字符串文字中读取双精度?
- 如果我在块中编写字符串文字,是否会从数据部分复制整个字符串数据?
- C++ 不能在cout中使用向量和字符串文字
- 为什么必须将 const 添加到 constexpr 中才能进行字符串文字声明?
- C++:Unicode 字符串文字的可移植性
- 返回空字符串文字 VS. 返回空点 - 它们是一样的吗?
- 确保字符指针始终指向相同的字符串文字
- 如何按照 Google C++风格指南连接字符串文字?
- 通过 constexpr 中的 'const char *' glvalue 访问字符串文字的值会出错
- 字符串文字到 char 数组的转换如何在C++中实际工作
- 另一个字符串文字,UDL 迷宫
- strlen 是否针对字符串文字进行了优化?
- 用户定义的字符串文字为字符串null终止