比较中单引号与双引号的含义是什么?

时间:2012-01-07 03:24:27

标签: c++

这会返回错误:

return (arg[0] == "-" && arg[1] == "-") ? true : false;

错误:ISO C ++禁止在指针和整数之间进行比较

然而,这不是:

return (arg[0] == '-' && arg[1] == '-') ? true : false;

'"之间有什么区别?

1 个答案:

答案 0 :(得分:22)

单引号表示字符文字。双引号表示字符串文字。

因此'-'的类型为char 1 ,而"-"的类型为const char[2](通常会衰减到const char * )。

<小时/> C中的 1 int