assert
int validG(Graph g) { return (g != NULL); // other checks? } int validV(Graph g, Vertex v) { return (validG(g) && 0 <= v && v < g->nV); } int validE(Graph g, Edge e) { return (validV(g,e.v) && validV(g,e.w)); }
Could also be done as C pre-processor macros, e.g.
#define validG(g) ((g) != NULL)