我给了一个char c,值(c ='1')作为要打印的数组索引 它给了我一个错误的输出
#include<iostream>
using namespace std;
int main()
{
int a[5];
cin>>a[1]; //5
char c ='1';
cout<<c<<" "<<a[c];
}
我希望输出5,但实际输出是一些随机数
答案 0 :(得分:2)
您的输出代码等效于:
cout << c << " " << a[int(c)];
换句话说:
cout << '1' << " " << a[49];
那只是未定义的行为。享受鼻恶魔。