你好,这是入门程序员,我想我还不是程序员,因为我还在学习基本语法。
这是我的问题。我可以在C ++中声明后初始化char类型变量吗?还是只能在声明时初始化char?
答案 0 :(得分:0)
您只能在定义变量时对其进行初始化。例如
char ch = 'a';
将ch
定义为char
,并使用字符文字'a'
对其进行初始化。如果你有
char ch;
//...
ch = 'a';
然后您将不再初始化ch
,而是分配给它。在达到ch = 'a';
之前,ch
有一些未指定的值 1 ,在达到ch = 'a';
之前使用其值将是未定义的行为。理想情况下,您应该始终初始化变量,使其具有已知状态,并且由于可以随时声明变量,因此可以推迟声明变量,直到知道要初始化的内容或何时立即设置它为止。例子
//some code
// oh, I need to get a char from the user
std::cout << "Yo, user, give me a character: ";
char ch; // no initialization but it is okay as I set it immediately in the next line
cin >> ch; // now ch has a value
// more code
1:在某些地方会为您初始化它。例如,如果ch
是在全局范围内声明的,那么它将为您初始化为零