首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++中的计算字符长度的方法:在使用指针循环之后,是否需要将指针重置?该怎么处理

2012-03-04 
C++中的计算字符长度的方法:在使用指针循环之后,是否需要将指针重置?比如如下代码:intString::leng(){inti

C++中的计算字符长度的方法:在使用指针循环之后,是否需要将指针重置?
比如如下代码:

int   String::leng()
{
        int   i   =   -1;
        while(m_str   != '\0 ')
        {
            i++;
            m_str++;
          }
          return   i;
}


在以上代码中,实际上将m_str已经移动到了最后,请问改怎么处理呢?

谢谢。

[解决办法]
int String::leng()
{
int i = -1;
char *p = m_str;
while(*p != '\0 ')
{
i++;
p++;
}
return i;
}
[解决办法]
但是不知道你的i为什么从-1开始
[解决办法]
你建一个临时变量来做这个循环就可以了。
[解决办法]
恩,用一个临时字符型指针来做。
[解决办法]
while(m_str != '\0 ')//少了个*吧
{
i++;
m_str++;
}

用个临时指针即可

热点排行