from: http://bbs.chinaunix.net/thread-4090169-1-1.html
使用单引号是在C中是“Character constants”在C++中是"Character literals",使用双引号是无论C还是C++都是“String literals”,前者通常视为单个字符,后者视为字符串,更确切的说前者只能“映射为一个值”;在C中是int类型的值,在C++中如果是一个字符那么映射到char如果是多个字符那么映射到int,无论C还是C++在Character constants多于一个时具体能映射多少个字符并且映射到具体什么样的值都是依速于程序执行环境和编译器的,标准对此的规定都是明确说由实现定义。而“String literals”视为一个值的集合,使用上可以认为是个数组,理论上可以视为“聚合对象”。 下面示例代码被认为multi-character character constant最有意义的使用方式了。