json_object_array_put_idx- Add json object to Array at specified index

json_object_array_add is used to add a json object to an array. Using json_object_array_put_idx, we can put a json object at a specified index

The syntax of the function is

int json_object_array_put_idx (struct json_object *this, int idx, struct json_object *val)

Specify the object where the json object has to be added, index and the value (json object) as the arguments

When you specify objects at some particular index, you may miss (intentionally) objects at some indices. The values at those indices will be null

The following program shows the usage of the function

#include <json/json.h>
#include <stdio.h>

int main() {
  /*Creating a json object*/
  json_object * jobj = json_object_new_object();

  /*Creating a json array*/
  json_object *jarray = json_object_new_array();

  /*Creating json strings*/
  json_object *jstring[3];
  jstring[0] = json_object_new_string("c");
  jstring[1] = json_object_new_string("c++");
  jstring[2] = json_object_new_string("php");

  /*Adding the above created json strings to the array*/
  int i;
  for (i=0;i<3; i++) { 
    json_object_array_put_idx(jarray,i+2, jstring[i]);

  /*Form the json object*/
  json_object_object_add(jobj,"Categories", jarray);

  /*Now printing the json object*/
  printf ("The json object created: %sn",json_object_to_json_string(jobj));


The output of the program is something like this

The json object created: { "Categories": [ null, null, "c", "c++", "php" ] }

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s