Как запустить функцию, внутри функции main

Если у меня есть функция по заполнению двумерного массива словами строки, то как её запустить в основной функции main. Как правильно записать параметры внутрь оператора вызова функции, если строка у нас это char a[100]

char parts[100][256];
int str_convert(char *s, char** parts)
{
    int r = 0;
    while(*s) 
    {
        if(*s != ' ')
        {
            char *ptr = parts[r++];
            do
            {
                *(ptr++) = *(s++);
            } while(*s && *s != ' ');
            *ptr = '\0';
        }
        else
            s++;
    }
    return r;
}

Ответы (1 шт):

Автор решения: KoVadim

вот где то так

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

int str_convert(char *s, char** parts)
{
    int r = 0;
    while(*s) 
    {
        if(*s != ' ')
        {
            char *ptr = parts[r++];
            do
            {
                *(ptr++) = *(s++);
            } while(*s && *s != ' ');
            *ptr = '\0';
        }
        else
            s++;
    }
    return r;
}

int main()
{
    #define SIZE 100
    #define STR_SIZE 200
    char** parts;
    parts = malloc(sizeof(char*) * SIZE);
    for (int i = 0; i < SIZE; i++) {
        parts[i] = malloc(STR_SIZE);
    }
    char str[] = "data test boo";
    int count = str_convert(str, parts);
    for (int i = 0; i < count; i++) {
        puts(parts[i]);
    }
    for (int i = 0; i < SIZE; i++) { free(parts[i]);}
    free(parts);
}
→ Ссылка