JSON-invoer

C-uitvoer

Wat is JSON naar C?

C heeft geen native JSON-types. Bibliotheken zoals json-c of cJSON parsen JSON tijdens runtime. Deze tool genereert C structs uit je JSON om geparste data te mappen naar getypeerde structuren. De JSON-specificatie definieert het invoerformaat.

De conversie draait in je browser. Stel de structnaam in het configuratiepaneel in. Geen data wordt naar een server gestuurd. Voor C++: gebruik JSON naar C++ voor classes en std::vector.

Hoe deze tool te gebruiken

1

JSON plakken of uploaden

Plak je JSON of upload een bestand. Stel de structnaam in het configuratiepaneel in. Ongeldige JSON toont een fout. Gebruik de JSON Validator om eerst de syntax te controleren.

2

C-uitvoer controleren

Het rechterpaneel toont gegenereerde C structs. Gebruik cJSON of json-c om JSON te parsen en deze structs te vullen. Je moet geheugen beheren bij het vullen van strings en arrays.

3

Kopiëren of downloaden

Gebruik <strong>Kopiëren</strong> of <strong>Downloaden</strong>. Om eerst JSON te formatteren: gebruik de JSON Formatter. Voor validatie: gebruik de JSON Validator.

JSON naar C-voorbeelden

Hier een voorbeeld van het genereren van C structs uit een JSON-object.

Voorbeeld: Abonnee-record

JSON-invoer:

Invoer

Gegenereerde C-uitvoer:

Uitvoer

Wanneer JSON naar C helpt

Bij het schrijven van embedded systemen, firmware of legacy C-code die REST-API's of configuratiebestanden consumeren heb je struct-definities voor JSON nodig. Een voorbeeld hier plakken geeft je C structs voor cJSON of json-c. Handmatig structs schrijven voor complexe geneste JSON is foutgevoelig; deze tool leidt de structuur af van je voorbeeld. Voor het eerst specifieke waarden ophalen: gebruik jq.

Veelgestelde vragen

Welke JSON-bibliotheek voor C?

cJSON is lichtgewicht en veel gebruikt. json-c is een andere optie. Beide parsen JSON naar een boom die je kunt doorlopen om structs te vullen. cJSON is single-file en eenvoudig in te bedden.

Hoe ga ik om met strings en arrays?

Strings mappen naar char* of vaste buffers. Arrays mappen naar pointers of arrays met vaste grootte. Je moet geheugen beheren bij het vullen van structs. Gebruik cJSON_GetObjectItem en cJSON_GetArrayItem om te doorlopen en waarden te kopiëren.

Zijn mijn gegevens privé?

Ja. De generatie draait volledig in je browser. Geen JSON of code wordt naar een server gestuurd.

Kan ik dit in embedded systemen gebruiken?

Ja. cJSON is ontworpen voor embedded gebruik. De gegenereerde structs zijn puur C. Je moet mogelijk groottes aanpassen voor vaste buffers of dynamische allocatie gebruiken waar ondersteund.

Geneste objecten vs pointers?

Geneste JSON-objecten worden geneste structs of pointers naar structs. De generator produceert de structuur; jij beslist de allocatiestrategie (stack, heap of static).

Gerelateerde tools

cJSON. json-c. JSON spec. MDN JSON. RFC 8259.