Hello I am new to Arduino and C programming.I wanted to parse string using sscanf fuction
This is my Program
String hith;int field1,field2;float field3;int F1=0,F2=0;float F3=0;int h1,h3;float h2;void setup() { Serial.begin(9600);}void loop() { field1=5; field2=6; field3=56.67; F1=field1; F2=field2; F3=field3; hith =hith+F1+","+F3+","+F2; Serial.println(hith);sscanf(hith.c_str(),"%d,%f,%d",&h1,&h2,&h3);Serial.println(h1);Serial.println(h2);Serial.println(h3); hith=""; delay(1000);}I am only able to Parse Integer values but not Floating points.
- 4
%fis not implemented in the Arduino world.tim– tim2021-06-28 17:21:37 +00:00CommentedJun 28, 2021 at 17:21
1 Answer1
On 8-bit Arduinos support for %f fromprintf andscanf (and related functions) has been removed to save space.
Instead you should look at parsing the string into chunks withstrtok() and useatof() to convert relevant chunks to floating point.
Explore related questions
See similar questions with these tags.