An additional integer column will be added to the table, which numbers the rows returned by the function, starting from 1. By default, the generated column is named ordinality. See Set-returning functions for a list of supported set functions. Here is a simple example of how the WITH ORDINALITY clause works.
SELECT * FROM unnest(array[0,1,2]) WITH ORDINALITY;
The output will be as follows.
 unnest | ordinality
--------+------------
      0 |          1
      1 |          2
      2 |          3
If we have a table t like so:
   arr
---------
 {a,b,c}
 {d,e}
We can use the unnest function on the column arr, call WITH ORDINALITY, and rename the newly generated columns.
SELECT * FROM t CROSS JOIN unnest(t.arr) WITH ORDINALITY AS x(elts, num);
The results will be as follows.
   arr   | elts | num
---------+------+-----
 {a,b,c} | c    |   3
 {a,b,c} | b    |   2
 {a,b,c} | a    |   1
 {d,e}   | e    |   2
 {d,e}   | d    |   1