I MySQL C API, mysql_fetch_row returnerar ett MYSQL_ROW-objekt, som i huvudsak är en matris med värden i den aktuella raden.
Så din kod bör vara något i stil med:
mysql_query(sqlhnd, "SELECT * FROM `my_table`");
MYSQL_RES *confres = mysql_store_result(sqlhnd);
int totalrows = mysql_num_rows(confres);
int numfields = mysql_num_fields(confres);
MYSQL_FIELD *mfield;
while((row = mysql_fetch_row(confres)))
{
for(i = 0; i < numfields; i++)
{
char *val = row[i];
// do something with val...
}
}
Ännu bättre, gör inte ett "SELECT * FROM mytable
" i ett program. Det skulle vara mycket bättre att namnge de fält du förväntar dig, så att du kan vara säker på ordningen på de returnerade fälten.