我有3个功能:C++函数调用函数不工作
- 首先函数采用int一个,并打印该多个点。
- 第二个函数需要一个int b并打印该星号。
- 第三个函数需要a和b并调用点函数和星函数。当我在main中调用它时,它返回0而没有任何输出。
每个函数都能正常工作 - 为什么第三个函数不能工作呢?
编辑:尝试初始化i = 0,代码仍编译结果相同。同样,函数dots()和stars()在自己调用时都可以正常工作。
void dots(int a){
for(int i; i<a; i++){
cout << ".";
}
}
void stars(int a){
for(int i; i<a; i++){
cout << "*";
}
}
//(not working):
void dotsstars(int a, int b){
dots(a);
stars(b);
}
int main(){
dotsstars(5, 6);
return 0;
}
未初始化的自动变量(即本地变量)不会被隐式初始化。他们的价值将是*不确定*。在C++中使用它们会导致*未定义的行为*。 –