我正在尝试实施“搜索并全部替换”。我有2个指针来监视字符
    #包括
    #包括
    使用命名空间std;

const int BUFSIZE = 256;

const char * const SEARCH = "the";
const char * const REPLACE = "Who is John";

int main()
{
    char buf[BUFSIZE];
      Error(SOURCE_FILE);

    //open file for append and update
    fstream destination(DESTINATION_FILE,
        ios_base::in | ios_base::out | ios_base::app);

    //check if destination file is open
    if (!destination.is_open())
        Error(SOURCE_FILE);


        bufPtr += length;               //move bufPtr to point past the SEARCH

        destination << bufPtr;          //write rest of buf to destination
        //destination.seekg(0);

        //write lines from source to destination
        //if(!(destination << buf << '\n'))
            //Error(SOURCE_FILE);
    }
    source.close();
    destination.close();

    return 0;
}

最佳答案

您不检查strstr()找不到搜索字符串的情况。在这种情况下,它返回NULL,而在这种情况下,while循环循环将无法正确执行操作。

关于c++ - 搜索并替换为指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12135969/

10-12 05:46