Как запустить функцию, внутри функции 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);
}