error C2015: too many characters in constant

发布于 2020-05-05  59 次阅读


编号:C2015

直译:字符常量中的字符太多了。

错误分析:

单引号表示字符型常量。

一般的,单引号中必须有,也只能有一个字符(使用转义符时,转义符所表示的字符当作一个字符看待),如果单引号中的字符数多于4个,就会引发这个错误。

另外,如果语句中某个字符常量缺少右边的单引号,也会引发这个错误,例如:if (x == ‘x || x == ‘y’) { … }

如果单引号中的字符数是4个以内,编译不报错,但会给出警告 :  

warning C4305: ‘initializing’ : truncation from ‘const int’ to ‘char’

warning C4309: ‘initializing’ : truncation of constant value

案例:

[cpp] view plaincopy

1. #include<stdio.h>  

2. int main()  

3. {  

4.    char a=’aaaaa';  

5.    printf(“%cn”,a);  

6.    return 0;  

7. }  


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。