I’m writing a function like in C#:
public void CountNumber()
{
for(int i = 0; i < 40; i++) {
if(i > 20) {
goto out1;
}
Console.WriteLine("hello " + 1);
out1:
string hello = "";
}
}
This basically counts the number and if the i is greater than 20 it should not write to console.writeline. it should step over and hit “out1” but the “out1” needs to have a function in the end to compile. It needs to have “string hello = “”” to compile. I don’t need the “string hello = “””. I just want it to do nothing and got the end of the loop. Is there a way to do this without the “string hello = “”” that the out1: statement needs? Like:
public void CountNumber()
{
for(int i = 0; i < 40; i++) {
if(i > 20) {
goto out1;
}
Console.WriteLine("hello " + 1);
out1:
}
}
Thanks.
This loop could easily be written many other ways – you could just loop while
i<=20instead ofi<40(best), or move theConsole.WriteLinecall into the if statement with the if inverted.However, I’m assuming you’re trying to work with a more elaborate scenario in your “real” case. If that’s the case, instead of using
goto, just usecontinueto skip the rest of the loop:Similarly, you can use
breakto completely break out of the loop and not process more elements, if that’s more appropriate in your real case.