In C++, all 3 expressions controlling the for loop are optional. This makes the language powerful. In your case you're missing the expression that initialises (typically) a loop counter, and the expression that's typically used to increment a loop counter. What you have is the stopping condition.
If Null is something that has an contextual conversion to a bool type then the program will compile. Otherwise it won't. Let's assume that it does:
If that converted bool value is false then the loop body never runs.
If that converted bool value is true then the loop body will run. (Note that it's possible that the conversion might change the converted object, so perhaps false is eventually yielded so the loop does eventually terminate!)
Null(whatever that variable is) tobooland uses that as the condition. I.e. it's equivalent to awhile.NullorNULL? If the former, you'll need to add whatNullmeans (is it a variable? a macro? something else?)