Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 从字符数组解析文件名_C++_Parsing_Char - Fatal编程技术网

C++ 从字符数组解析文件名

C++ 从字符数组解析文件名,c++,parsing,char,C++,Parsing,Char,如果以前有人问过这个问题,我很抱歉,但我正在尝试解析一个字符数组,这样我就可以获得文件名 下面是我最终复制的字符数组的一个示例 picture1.bmp file2.txt random.wtf dance.png 请注意,每个文件名之间有3个空格 我想做以下几点: 假设我们从第一个角色开始,前进直到到达一个空格 将该空间内的所有内容复制到索引为0的数组中 跳过2个空格(以穿过3个空格) 直到找到一个空格,然后将其复制到数组索引1中 我可以做一个黑客的工作,只是好奇一些更高级的程序

如果以前有人问过这个问题,我很抱歉,但我正在尝试解析一个字符数组,这样我就可以获得文件名

下面是我最终复制的字符数组的一个示例

picture1.bmp   file2.txt   random.wtf   dance.png
请注意,每个文件名之间有3个空格

我想做以下几点:

  • 假设我们从第一个角色开始,前进直到到达一个空格
  • 将该空间内的所有内容复制到索引为0的数组中
  • 跳过2个空格(以穿过3个空格)
  • 直到找到一个空格,然后将其复制到数组索引1中

  • 我可以做一个黑客的工作,只是好奇一些更高级的程序员会如何做,因为我在这里学习。

    你能解释更多吗?它如何知道在文件名之间允许有三个空格?@PladniusBrooks它跳过所有空格(实际上是所有空格,包括制表符、换行符等),不管是1还是11000@Pladinus:字符串上
    istream::operator>
    的默认行为是读取以空格分隔的数据。当涉及到任何空格时,它将停止读取。下一个调用将导致它跳到下一个非空白字符。你可以有一百万个空格,标签和换行符。“他们都会被跳过的。”本贾明林德利感谢你和塞思·卡内基。最后一个问题。我得到一个“不允许使用不完整类型”,因为_数组是指向字符数组的指针。我将如何使此代码与之配合使用?@PladniusBrooks:您是否同时包含了
    ?您能否解释得更详细一些?它如何知道在文件名之间允许有三个空格?@PladniusBrooks它跳过所有空格(实际上是所有空格,包括制表符、换行符等),不管是1还是11000@Pladinus:字符串上
    istream::operator>
    的默认行为是读取以空格分隔的数据。当涉及到任何空格时,它将停止读取。下一个调用将导致它跳到下一个非空白字符。你可以有一百万个空格,标签和换行符。“他们都会被跳过的。”本贾明林德利感谢你和塞思·卡内基。最后一个问题。我得到一个“不允许使用不完整类型”,因为_数组是指向字符数组的指针。我将如何使这段代码与之配合使用?@PladniusBrooks:您是否同时包含了
    ?无需在标题中写“-C++”;我们已经有标签了!不需要在标题中写`-C++`;我们已经有标签了!
    std::istringstream iss(the_array);
    std::string f1, f2, f3, f4;
    iss >> f1 >> f2 >> f3 >> f4;