色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c 判斷是否是json字符串

謝彥文2年前9瀏覽0評論

JSON字符串是Web開發中使用最多的數據交換格式之一。判斷一個字符串是否是JSON字符串是我們經常需要處理的事情。C語言提供了一些庫函數可以實現這個功能。

下面我們來看一段示例代碼:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <jansson.h>
int is_json(const char* str) {
json_error_t error;
json_t* json = json_loads(str, JSON_ALLOW_NUL, &error);
if (!json) {
return 0;
}
json_decref(json);
return 1;
}
int main() {
char* str1 = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\" }";
char* str2 = "This is not a valid JSON string.";
if(is_json(str1)) {
printf("str1 is a valid JSON string.\n");
} else {
printf("str1 is not a valid JSON string.\n");
}
if(is_json(str2)) {
printf("str2 is a valid JSON string.\n");
} else {
printf("str2 is not a valid JSON string.\n");
}
return 0;
}

這段代碼中使用了jansson庫來判斷一個字符串是否是JSON字符串。is_json函數中,我們首先使用json_loads函數來解析字符串,并賦值給json_t類型的變量json。如果解析出錯,函數返回0。如果解析成功,我們需要使用json_decref函數釋放json對象。最后,函數返回1。

在main函數中,我們分別用兩個字符串來測試is_json函數。運行這個程序,輸出結果如下:

str1 is a valid JSON string.
str2 is not a valid JSON string.

這個程序正確地判斷了兩個字符串是否是JSON字符串。