zoukankan      html  css  js  c++  java
  • int 与 string::length()

    今天在代码中遇到这样的问题

    int nStart = -1;
    while (nStart < strTemp.length())
    {
        ...  
    }

    感觉自己写的逻辑没有错误,但是,代码执行结果就是不对,结果单步调试到该处发现,while语句一次也没有执行,为什么呢?

    这里的原因是:string::length()的返回值string::size_type类型,而size_type是unsigned int的,所以-1跟它比较是比它大的。


    哎,细节决定成败啊,以后千万要注意

  • 相关阅读:
    [solr]
    [solr]
    [Linux] CentOS 加入开机启动
    [Linux] VirtualBox
    [Eclipse]
    [JBoss]
    [solr]
    [solr]
    [solr]
    [solr]
  • 原文地址:https://www.cnblogs.com/lit10050528/p/4188930.html
Copyright © 2011-2022 走看看