注册 登录
编程论坛 C++教室

简单问题

momo1212825 发布于 2008-04-16 22:51, 778 次点击
#include<iostream>
#include<string>
int main()
{
 using namespace std;
 cout<<"Enter a word:";
 string word;
 cin>>word;
 for{int i=word.size()-i;i>=0;i--}
 cout<<word[i];
 return 0;
}
我知道这个程序是输入一个词然后把这个单词反着打印出来,
但我不明白
 for{int i=word.size()-i;i>=0;i--}这句的word.size()-i是什么意思...本人刚学 才鸟一个 请帮忙..谢谢
4 回复
#2
幽灵嫖客2008-04-17 06:21
是不是字符串的反向输出: 应该这样:
#include<iostream>
#include<string>
int main()
{
using namespace std;
cout<<"Enter a word:";
string word;
cin>>word;
for(int i=word.size()-1;i>=0;i--)
cout<<word[i];
return 0;
}
我个人感觉
#3
momo12128252008-04-17 07:55
是字符串的方向输出 程序没错 但word.size()-i这个我有点不明白  请给我讲解下好不
偶新手...
#4
herolzx2008-04-17 08:17
word 是字符串指针,下标从0开始,长度是word.size(),所以下标的范围是
[0 - word.size() - 1],所以就有
    for(int i=word.size()-1;i>=0;i--)
    cout<<word[i];
#5
zaroty2008-04-17 09:25
啊哦,谢谢楼主,偶又学到新知识了,,,可以对字符串的指针直接操作。。
1