int QSget_pi_array (QSprob p, double *pi)
/* p is an initialized QSprob, a handle to an existing LP problem  */

int rval, nrows;
double *pi;

nrows = QSget_rowcount (p);
pi = (double *) malloc (nrows * sizeof (double));

rval = QSget_pi_array (p, pi);
if (rval) {
    fprintf (stderr,
             "Could not get dual values, error code %d\n", rval);
} else {
    /* To print dual values with names, see QSget_solution() example. */
}

free (pi);