for (std::list<char*>::iterator iterator_condition_columns = condition_columns.begin();;){ begin_offset += sprintf(condition_begin_limit_rows + begin_offset, "%s asc", *iterator_condition_columns); end_offset += sprintf(condition_end_limit_rows + end_offset, "%s desc", *iterator_condition_columns); if ((++iterator_condition_columns) == condition_columns.end()){ return TRUE; } begin_offset += sprintf(condition_begin_limit_rows + begin_offset, ","); end_offset += sprintf(condition_end_limit_rows + end_offset, ","); }