C/C++ 中这样的char * 初始化如何理解

[复制链接]
查看11 | 回复5 | 2016-9-4 05:53:29 | 显示全部楼层 |阅读模式
如下的字符串初始化代码:
const char* demoStart =
"\n"
""
"\n"
"\n"
"[I] Go to the Toy store![/I]"
"[I] Do bills [/I]"
"[I] Look for Evil Dinosaurs! [/I]"
"";
可以这样分多行初始化吗?
像JAVA和C#的话会在每行加上“+”,在C/C++中不用加吗?
请高手帮忙解释!谢谢!
还有就是程序中,除了函数定义的花括号有什么用?
不知道哪些资料会介绍这些细节问题?望不吝赐教,谢谢!

回复

使用道具 举报

千问 | 2016-9-4 05:53:29 | 显示全部楼层
以前看过这方面的,我搜了好久,终于搜到那本书了,叫《C语言程序设计:现代方法》,但是现在china-pub没试读章节下载了,我又搜了半天,终于在csdn找到了免费试读:http://book.csdn.net/bookfiles/532/10053217964.shtml页面里,搜“13.1.2延续字符串字面量”,你就能解惑了。这个是C标准,C++当然会兼容,至于C#试了,不行。 Java本人无任何明显的或潜在的兴趣,就不讨论了。补充部分:除了函数定义和类定义外,花括号是用来表示复合语句的, 花括号里外是不同的作用域, 实际项目中我们常用来避免switch语句里的warning.资料就是我给你链接的那
回复

使用道具 举报

千问 | 2016-9-4 05:53:29 | 显示全部楼层
可以这样来书写,在VS2005中调试通过。在C++中连接字符串不能用“+”,得用strcat函数,在JAVA、C#中可以。#include#include#include using namespace std;void main(){ const char* dem
回复

使用道具 举报

千问 | 2016-9-4 05:53:29 | 显示全部楼层
C/C++中char字符串用strcat函数,而不能用+。
回复

使用道具 举报

千问 | 2016-9-4 05:53:29 | 显示全部楼层
const char* p = "abcd""efgh";//可以这样初始化const char* p1 = "abcd"\
"efgh"; // 也可以这样初始化
回复

使用道具 举报

千问 | 2016-9-4 05:53:29 | 显示全部楼层
再每行的后面加上\
做为连接符啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行