#include
bool fun(char* str) //请问这个bool函数究竟是怎么实现功能的,为什么看不懂?
{
int len=0;
for(;str[len] = 0; len ++); //这里的for循环里一开始就是 ;
len--;
for(int i=0; i
#include bool fun(char* str) //请问这个bool函数究竟是怎么实现功能的,为什么看不懂?{
答案:1 悬赏:70 手机版
解决时间 2021-04-23 19:51
- 提问者网友:未信
- 2021-04-23 00:37
最佳答案
- 五星知识达人网友:何以畏孤独
- 2021-04-23 02:13
//程序应该是判断输入字符串是不是对称
#include <iostream.h>
bool fun(char* str) //请问这个bool函数究竟是怎么实现功能的,为什么看不懂?
{
int len=0;
for(;str[len] != '\0'; len ++); //这是是不是应该这样写
//for空循环,直到字符串结束符,最终得到字符串长度
len--; //此处是为了减去'\0'占用的一个长度
for(int i=0; i<len; i++,len--)
{
if( str[i] != str[len] )//这个是判断字符串首位对称位置的字符是不是相等
return 0; //不相等返回0
}
return 1;
}
void main()
{
char str[1024];
cout<<"请输入一行文字"<<endl;
cin.getline(str,1024);
cout<<fun(str)<<endl;
return;
}
再问: 非常感谢,我还有一处不明白,就是 for(;str[len] != '\0'; len ++); 是不是可以换成 for(len=0;str[len] != '\0'; len ++); 我不太明白for中直接有; 的意思。
再答: 完全可以,只不过前面一句int len=0;//此处对len定义的同时已经初始化为0所以for里面就不需要重复赋值为0了,如果前面定义未初始化,则for里面最好加上初始条件len=0,否则可能发生错误
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯