Я начал с программирования на Golang, и все выглядело просто. Затем я наткнулся на анализатор JSON C ( JSMN ), чтобы я мог попробовать CGO.
Вот строки кода( 11 и 46 ) из этого примера :
static const char *JSON_STRING =
"{\"user\": \"johndoe\", \"admin\": false, \"uid\": 1000,\n "
"\"groups\": [\"users\", \"wheel\", \"audio\", \"video\"]}";
printf("- User: %.*s\n", t[i+1].end-t[i+1].start, JSON_STRING + t[i+1].start);
Это дает мне результат:
"- Пользователь: johndoe"
Я новичок в C. Я хочу получить значение "johndoe" в переменной.Я попробовал ниже код, который дает мне NULL
:
int c = 0;
char sub[1000];
while (c < (t[i+1].end-t[i+1].start) ) {
sub[c] = JSON_STRING[t[i+1].start+c-1];
c++;
}
sub[c] = '\0';
Вывод:
"- Пользователь: null"
Как я могу сделатьтот?Спасибо!