c++ - 自制删除如果是空间

标签 c++ mingw

我正在学习 C++,为了练习,我正在制作一个四功能计算器。我正在尝试(出于实践原因)制作我自己的函数,从字符串中删除所有空格。该函数可以编译,但在执行该函数时程序会崩溃。谁能告诉我哪里出了问题?

功能:

int operate(std::string inRaw) {
    // Parsing
    int j = 0;
    int inMinLen;
    int inLen = inRaw.length();
    std::string inSub, in[inLen];
    for(int i = 0; i < inLen; i++) {
        inSub = inRaw.substr(i, 1);
        while(inSub != " ") {
            in[j] = inSub;
            j++;
        }
        inMinLen = j+1;
    }
    std::string inMin[inMinLen];
    for(int k = 0; k < inMinLen; k++) {
        inMin[k] = in[k];
        std::cout << in[k]; // DEBUG
    }
}

最佳答案

这个 while 循环:

    while(inSub != " ") {

永远不会完成,因为您永远不会在循环内更改 insub 的值。

关于c++ - 自制删除如果是空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29503916/

相关文章:

c++ - 我们应该在通过引用传递之前取消引用指针吗?

c - minGW 中的线程 C 程序

debugging - 如何暂停以检查 Makefile 运行的 sh 命令的结果?

c - Borland vs. MingW/GCC 编译速度..

c++ - OpenCv 未定义对 `cv::的引用

c - 在 Sublime 2(Windows) 中编译 C 程序时出错

c++ - std::tuple_size 和部分专用模板

c++ - 防止 C++ 中的多重继承

c++ - std::string operator + 与 stringstream 的性能

c++ 和 boost program_options 错误 : 'desc' does not name a type