Jakob
Jakob

Reputation: 982

encountered "cleanup:" in a Foundation code sample in Xcode. What is this?

so in some sample code from this upcoming Core Audio Book i've encountered an unfamiliar symbol

cleanup:

which is used before some dispose(myStuff) functions are called. It's not preceded by an '@' or a '#'. Seems you can type any word, followed by a colon, and it will act like a comment?

int main (int argc, const char * argv[])
{
    @autoreleasepool 
    {
        NSLog(@"i am code.");

    cleanup:    
    foop:
    lol:

        NSLog(@"even more code.");
    }
    return 0;
}

Upvotes: 1

Views: 127

Answers (2)

Chris Cooper
Chris Cooper

Reputation: 17594

It's not a comment. It's a label specifying a location for goto.

E.g.

int main (int argc, const char * argv[])
{
    while (1) {
        printf("Is this an infinite loop?\n");
        goto endLabel;
    }

    endLabel:    

    printf("No.");

    return 0;
}

Output:

Is this an infinite loop?
No.

Upvotes: 3

Cyrille
Cyrille

Reputation: 25144

That's a label, to be used in a goto statement.

Upvotes: 1

Related Questions