初学者有关问题-这样给char*赋值的第一回见

菜鸟问题--这样给char*赋值的第一回见
C/C++ code

const char* usage = 
    "-v, -version\n" 
    "-q, -quit\n";
printf("%s", usage);

没见过的用法


C/C++ code
自己的一般做法
const char* usage = 
    "-v, -version\n-q, -quit\n";
printf("%s", usage);




俺原来搞C的 按说最上面那个到 -version\n"后 下面那个-q 都应该不会输出的呀 

可现在能输出,是怎么回事?

------解决方案--------------------
上面的写法是把一个字符串写在两行里 方便长字符串书写
实际上它是连接在一起的 中间并没有\0
------解决方案--------------------
关键是‘:’分号不是打在 -version\n后的
------解决方案--------------------
"a" "b"

"a"
"b"
对编译器来说都等价于
"ab"
------解决方案--------------------
探讨

"a" "b"

"a"
"b"
对编译器来说都等价于
"ab"

------解决方案--------------------
估计主要是考虑到字符串比较长吧,或者为了提醒这段字符串就是分两行显示的
------解决方案--------------------
探讨

引用:

"a" "b"

"a"
"b"
对编译器来说都等价于
"ab"

+++

------解决方案--------------------
探讨

"a" "b"

"a"
"b"
对编译器来说都等价于
"ab"