Вам не нужно sscanf
.Вы можете использовать strchr
, чтобы найти пробелы, atoi
, чтобы превратить строки в целые числа, и простое назначение, чтобы превратить пробелы в конечные нули.
Вы также можете сделать это:
#include <stdio.h>
int main(void)
{
const char *test="123 402 10 aaa bbb cc";
short i, j, y;
char c[128];
sscanf(test, "%hd%hd%hd %[^\n]s", &i, &j, &y, c);
printf("i=%d j=%d y=%d c='%s'\n", i, j, y, c);
}
Выход: i=123 j=402 y=10 c='aaa bbb cc'