C++的简单语句错在哪里?
来源:百度知道 编辑:UC知道 时间:2024/05/06 07:52:17
#include<iostream>
#include<string>
using namespace std;
int main()
{
char str[10];
int i,j;
cin>>str[i];
j=strlen(str);
for(i=0;i<j;j--)
cout<<str[j];
cout<<endl;
system("pause");
return 0;
}
#include<string>
using namespace std;
int main()
{
char str[10];
int i,j;
cin>>str[i];
j=strlen(str);
for(i=0;i<j;j--)
cout<<str[j];
cout<<endl;
system("pause");
return 0;
}
#include<iostream>
#include<string>
using namespace std;
int main()
{
char str[10];
int i,j;
cin>>str;
j=strlen(str);
for(i=0;i<j;i++)
cout<<str[i];
cout<<endl;
system("pause");
return 0;
}
char str[10];
已经定义了str[10]。
为什么又要
cin>>str[i];
而且你也没有初始化str[10]。
cout<<str[j];
让这句怎么输出?
cin>>str这里出错
i没有初直
for(i=0;i<j;j--)
cout<<str[j];
cout<<endl;
这句话可以写成一句 cout<<str<<endl;
i 没初始化,从理论上来讲str[]也没有初始化成功。
你至少应该这么写:
char ch;
i = 0;
while (i < 10 && cin >> ch)
{
str[i] = ch;
++i;
}
#include<iostream>
#include<string>
using namespace std;
int main()
{
char str[10];
int i,j;
cin>>str[i]; //错误一:i局部变量,编译器