1 条题解
-
0
思路与算法
对字符串字面量"Hello, World!"应用sizeof并输出结果。sizeof是运算符,表达式仍可写成sizeof(...)形式。
正确性说明
Hello有5个字符,逗号与空格各1个,World有5个,叹号1个,共13个可见字符。C++窄字符串字面量还带末尾空字符,因此数组长度为14,sizeof得到14个char字节。
复杂度
固定字面量、一次输出,时间与额外空间均O(1),字面量存储14字节。sizeof的值在编译期确定,没有运行期遍历或数组初始化。
易错点
不能用strlen,它不计结束空字符;不能对指针变量sizeof,这会得到指针大小。本题确有逗号后的空格;无输入的唯一空流只需1个完整验收点。
参考代码(C++11)
#include <bits/stdc++.h> using namespace std; int main() { cout << sizeof("Hello, World!") << "\n"; }
- 1