C JSON是一種輕量級的數據交換格式,被廣泛地用于數據交互和傳輸。而類轉換,則是將不同類型的數據互相轉換的過程。在C中,JSON和類轉換的結合,可以大大地方便數據的處理和使用。
//C JSON示例代碼 #include "cJSON.h" #include#include int main() { char *json = "{\"name\":\"Tom\", \"age\": 26}"; //定義JSON字符串 cJSON *jsonData = cJSON_Parse(json); //將JSON字符串解析成JSON對象 char *name = cJSON_GetObjectItem(jsonData, "name")->valuestring; //獲取name的值 int age = cJSON_GetObjectItem(jsonData, "age")->valueint; //獲取age的值 printf("name=%s, age=%d\n", name, age); return 0; }
上述代碼演示了如何用C JSON解析JSON字符串,并獲取其中的值。返回的JSON對象可以通過Get函數獲取指定的項,然后用下劃線調用其屬性來獲取其值。注意,字符串是通過雙引號定義的,而不是單引號。
//類轉換示例代碼 #include#include typedef struct Student { //定義Student結構體 char *name; int age; } Student; int main() { Student stu = {"Tom", 26}; //定義一個Student類型的變量 void *p = &stu; //將該變量地址傳遞給一個void指針p Student *nStu = (Student *)p; //將p轉換為Student類型指針,即nStu指向原始的結構體 printf("name=%s, age=%d\n", nStu->name, nStu->age); //輸出stu的屬性值 return 0; }
上述代碼演示了將void指針轉換為結構體類型指針,從而實現將不同類型的數據互相轉換。這里將stu變量的地址通過void指針傳遞,再將該指針轉換為Student*類型指針,從而實現了從指針到結構體的轉換。最后,通過箭頭符號指向該結構體的屬性,實現了對結構體中數據的獲取。