当我尝试运行此代码时,它编译没有任何错误,但我希望它应该显示它作为输入所需的字符串和int数组。相反,在给出一个输入后,我会看到一个零和程序终止列表。 但是,当我从两个for循环中删除包含k [j]的行时,它起作用了。 我究竟做错了什么?请原谅如果被问到愚蠢,因为我是新手,请帮忙......
#include <iostream>
#include <string>
using namespace std;
int main ()
{
int t,count = 0;
string state[t];
int k[t];
cin>>t;
for (int j=0; j<t; j++)
{
getline(cin, state[j]);
cin>>k[j];
}
for (int j=0; j<t; j++)
{ cout<< state [j]<<'\t'<<k[j];
cout<<endl;
}
return 0
}
答案 0 :(得分:0)
此时,您声明k[]
和state[]
数组t
未定义。
t
应事先使用有效值启动!