With the -z flag NULL values are not crossed. This means that if a NULL value occurs in any input data layer, this combination is ignored, even if other data layers contain non-NULL data. In the example given below, use of the -z option would cause 3 categories to be generated instead of 5.
If the -z flag is not specified, then map layer combinations in which some values are NULL will be assigned a unique category value in the resulting output map.
Category values in the new output map layer will be the cross-product of the category values from these existing input map layers.
          map1   map2
          ___________
          NULL    1
          NULL    2
           1      1
           1      2
           2      4
          map1   map2   output
          ____________________
          NULL    1       0
          NULL    2       1
           1      1       2
           1      2       3
           2      4       4
          category   category
          value      label
          ______________________________
             0       layer1(0) layer2(1)
             1       layer1(0) layer2(2)
             2       layer1(1) layer2(1)
             3       layer1(1) layer2(2)
             4       layer1(2) layer2(4)