c++ - 如何在不使用任何基本函数的情况下拆分字符数组

标签 c++

我有这个函数:int split(char* str, char s),那么如何在不使用 strtok() 的情况下拆分 str > 还是其他功能?

例如:str = "1,2,3,4,5", s = ','

split(str, s) 后,输出为:

1
2
3
4
5

抱歉,如果 str == NULL 则 int 返回 -1,如果 str != NULL 则返回 1。

最佳答案

这个怎么样?我不确定 int 返回类型在函数中意味着什么,所以我将其设为拆分计数。

#include <stdio.h>
int split(char* str, char s) {
    int count = 0;
    while (*str) {
        if (s == *str) {
            putchar('\n');
            count++;
        } else {
            putchar(*str);
        }
        str++;
    }
    return count;
}

关于c++ - 如何在不使用任何基本函数的情况下拆分字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34408056/

相关文章:

c++ - clock() 函数总是返回 0

c++ - 迭代二维 STL vector c++

c++ - UTF-16 编码类型,在 Windows 中使用 wofstream

c++ - Win32 C++ 检测 USB 驱动器损坏

c++ - 使用Nsight调试导出DLL的非启动项目中的CUDA代码

c++ - VC++ 2010 速成 |编译器从我的项目中删除了一些代码

c++ - std::vector 赋值 SIGNAL 11 和 SIGNAL 6

c++ - 如何显示目录中的文件列表

c++ - 为什么 unique_ptr 析构函数的异常会终止程序?

c++ - 如何使用 cout 以完全精确的方式打印 double 值?