I want the compiler to throw an error when strbuild()'s variadic arguments are anything except the range data type. How would this be achieved?
Code:char * strbuild(int num, ...){ va_list ap; range tmp; int i = 0; char * str = malloc(sizeof(char)); va_start(ap, num); for(; num > 0; num--){ tmp = va_arg(ap, range); if(tmp.min >= tmp.max) return NULL; str = realloc(str, strlen(str) + (tmp.max - tmp.min) ); for(; tmp.min <= tmp.max; tmp.min++, i++) str[i] = tmp.min; } str[i + 1] = '\0'; va_end(ap); return str; }



LinkBack URL
About LinkBacks


