I create a structure with negative numbers
cJSON* t = cJSON_CreateObject();
cJSON* i = cJSON_CreateObject();
cJSON_AddNumberToObject (t, “n1”, -75);
cJSON_AddNumberToObject (t, “n2”, (float)-75);
cJSON_AddNumberToObject (i, “n3”, -75);
cJSON_AddItemToObject (t, “test”, i);
output_1
char *ch = cJSON_PrintUnformatted(t);
APP_DEBUG("%s\r\n", ch);
result_1
{“n1”:-7.5ð0000000000E1,"n2":-7.5
ð0000000000E1,“test”:{“n3”:-7.5`ð0000000000E1}}
output_2
cJSON tst = cJSON_Parse(ch);
APP_DEBUG("%f\r\n", cJSON_GetObjectItem(tst, “n1”)->valuedouble);
APP_DEBUG("%f\r\n", cJSON_GetObjectItem(tst, “n2”)->valuedouble);
cJSON json_node = cJSON_GetObjectItem(tst, “test”);
cJSON* json_item = cJSON_GetObjectItem(json_node, “n3”);
APP_DEBUG("%f\r\n", json_item->valuedouble);
result_2
0.000000
0.000000
0.000000
What is my mistake?