您初始化方法中定义的int
变量,使其值为0
,直到您为int
计算特定值。什么可以将char
值初始化为什么?
char retChar = '';
这会出错,如果我初始化为-1
,则表示字符过多。
答案 0 :(得分:39)
通常对于本地变量,我会尽可能地初始化它们。我很少需要“虚拟”值。但是,如果您做,您可以使用您喜欢的任何值 - 如果您确定在阅读之前要分配值,则不会有任何区别。
如果你想要char
等价于0,它只是Unicode 0,可以写成
char c = '\0';
这也是char
类型的实例(或静态)变量的默认值。
答案 1 :(得分:10)
您可以将变量初始化为
char retChar = 'x';
或者让它自动初始化,即
char retChar = '\0';
ascii 0,与
相同char retChar = (char) 0;
将char值初始化为什么?
在自动初始化之间听起来未定,这意味着,您没有影响力或显式初始化。但是你不能改变默认值。
答案 2 :(得分:3)
我会这样做:
char x = 0; //Which will give you an empty value of character
答案 3 :(得分:2)
您可以将其初始化为''。此外,您收到错误-1的原因是字符太多是因为它将' - '和1视为单独处理。
答案 4 :(得分:0)
也许0
或'\u0000'
会这样做?
答案 5 :(得分:0)
正如您将在链接讨论中看到的那样,不需要为我们完成具有特殊字符的字符串,并且由' \ u0000'字符代码。
因此,如果我们只想检查指定的char是否已初始化,只需写:
if(charVariable != '\u0000'){
actionsOnInitializedCharacter();
}