#include <stdio.h>
#include <stdint.h>
void parse_csv_to_array(const char *str, uint8_t *arr, uint8_t *count) {
// Your logic here
int len;
for(len=0;str[len]!='\0';len++);
//number of commas
int i;
uint8_t k=1;
for(i=0;i<len;i++){
if(str[i] == ',') k++;
}
*count = k;
int j,l=0;
int sum=0;
for(j=0;j<k;j++){
sum=0;
while(str[l] != ',' && str[l]!='\0'){
//printf("\n %c",str[l]);
char temp=0;
temp = str[l] - '0';
sum = sum * 10;
sum += temp;
l++;
}
l++;
arr[j] = sum;
}
}
int main() {
char str[101];
fgets(str, sizeof(str), stdin);
// Remove newline
uint8_t i = 0;
while (str[i]) {
if (str[i] == '\n') {
str[i] = '\0';
break;
}
i++;
}
uint8_t arr[20];
uint8_t count = 0;
parse_csv_to_array(str, arr, &count);
for (uint8_t i = 0; i < count; i++) {
printf("%u", arr[i]);
if(i < count - 1){
printf(" ");
}
}
return 0;
}
Input
10,20,30
Expected Output
10 20 30