代码之家  ›  专栏  ›  技术社区  ›  Zain Rizvi viperguynaz

如何找到lpcstr的长度

  •  8
  • Zain Rizvi viperguynaz  · 技术社区  · 15 年前

    我正在尝试使用atoi()将lpcstr转换为整数,为了验证转换是否成功进行,我想计算它生成的整数和原始lpcstr(它只应包含整数)中的位数。

    我很难找到计算lpcstr长度的好方法。到目前为止,唯一的方法似乎就是数数,直到我得到一个'/0'

    有什么更好方法的建议吗?

    谢谢

    9 回复  |  直到 8 年前
        1
  •  11
  •   sean riley    15 年前

        2
  •  18
  •   MrD    11 年前

    LPCTSTR lstrlen() strlen() MSDN

        3
  •  8
  •   Rüdiger Hanke shraddha hattimare    15 年前

    strtol endptr

        4
  •  5
  •   Matt Dillard    15 年前

    strlen()

    size_t len = strlen( szNumber );
    
        5
  •  2
  •   Salman A    15 年前

    strlen '\0'

        6
  •  2
  •   AnT stands with Russia    15 年前

        7
  •  1
  •   user189405    15 年前
    LPCSTR lpText = "test";
    long lTextLen = CString(lpText).GetLength();
    
        8
  •  0
  •   Jerry Coffin    15 年前

    #include <sstream>
    #include <iostream>
    
    typedef char const *LPCSTR;
    
    template <class T>
    bool check_read(LPCSTR input, T &val) { 
        std::istringstream reader(input);
    
        reader >> val;
        char ch;
        if (reader >> ch) {
            std::cerr << "\nUnconverted character: " << ch << std::endl;
            return false;
        }
        return true;
    }
    
    int main() { 
        LPCSTR inputs[] = {"12345", "54321a"};
        int a;
    
        for (int i=0; i<2; i++) {
            check_read(inputs[i], a);
            std::cout << "Converted: " << a << std::endl;
        }
        return 0;
    }
    

        9
  •  0
  •   Patrick    8 年前

    LPCSTR const char* strlen

    lstrlenA