编辑代码

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

// 按指定分隔符索引分割字符串的函数
int split_string_at_index(const char *str, char c, int comma_index, char *result) {
    int len = strlen(str);
    int comma_count = 0;
    int start = 0;
    int i;

    // 查找指定索引的分隔符位置
    for (i = 0; i <= len; i++) {
        if (str[i] == c || str[i] == '\0') {
            comma_count++;
            if (comma_count == comma_index + 1) {
                // 复制字符串
                strncpy(result, str + start, i - start);
                result[i - start] = '\0';
                return 0;
            }
            start = i + 1;
        }
    }

    // 如果未找到指定索引的分隔符
    fprintf(stderr, "未找到指定索引的分隔符\n");
    return -1;
}
   

int main() 
{
    const char input[] = "91000001,7945,V1";    
   
    char output[10]={0};

    if (split_string_at_index(input, ',',2, output) == 0) 
    {
        printf("分割后的字符串: %s\n", output);
    }

    return 0;
}