c++ - 在同一赋值语句中将多个字符串文字转换为 const char*
问题描述
我是 C++ 的新手,我遇到了下面的代码片段,这对我来说看起来很奇怪。
const char* keys = "hello" "world";
std::cout << keys << std::endl;
上面的代码在控制台中打印helloworld 。在同一语句中将两个字符串文字分配给 const char* 在语法上是否有效?如果是这样,它将如何存储在内存中?
解决方案
这是在编译之前(但在宏扩展 IIRC 之后)连接 C++(和 C)相邻字符串文字的规则。
这发生在任何地方,而不仅仅是作为赋值语句的一部分。
推荐阅读
- laravel - 将 Laravel 5.8 升级到 6.2 后 SQLite 迁移出错
- javascript - if 和 else if 语句被忽略,Javascript
- oracle-apex - Oracle APEX - 具有多个父项的面包屑条目
- javascript - 从外部 HTML 文件调用 javascript 函数
- c# - 什么是 kafka 中的本地值序列化错误?
- docker - 我可以回滚到以前版本的 Docker Desktop 吗?
- r - 如何使用插入符号在递归特征消除中进行下采样?
- javascript - 从数组中的对象获取值:js
- angular - Spring Boot & Angular 应用程序部署
- git - Git->fatal:您当前的分支 'master' 还没有任何提交