Я хотел бы спросить вас, как я могу получить значения 043, 21.45, 45.65, 9.34, 3.46 с использованием sscanf.Возвращаемые значения с помощью sscanf
Parameters: 43 VALUES FROM 0000:0000 (043)
Name_8:(Temp=21.45,Hum=45.65,AR=9.34,Volt=3.46V)
До FROM я не знаю, что код что-то вроде этого
char str[20];
sscanf(buff,"%*s %*d %*s %s",str);
printf("Results %s\n",str);
И это возвращает меня
Results FROM
Но я не знаю, как продолжить sscanf. Я не очень хорошо знакомы, и я не знаю, как избежать символы, такие как(), _ ,: т.д.
Вы прочитали документацию sscanf? –
Я попытался понять это из следующего источника, но у него есть пример для простого предложения, а не как мой http://www.cplusplus.com/reference/cstdio/sscanf/ – dali1985
Следуйте «см. Также» по адресу http://www.cplusplus.com/reference/cstdio/scanf/, который имеет гораздо больше информации о формате. В частности, «Любой символ, который не является символом пробела (пустой, новой строкой или вкладкой) или частью спецификатора формата (который начинается с символа%), заставляет функцию читать следующий символ из потока, сравнивать его с этим не-пробельный символ, и если он совпадает, он отбрасывается, и функция продолжается со следующим символом формата ». ... Вы можете использовать это, чтобы пропустить константные части вашего формата ввода. –