KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I almost finishing a clean NSLog with this code: #define NSLog(FORMAT, ...) printf("%s\n", [[NSString stringWithFormat:FORMAT, __VA_ARGS__] UTF8String]); This work fine if I do this: NSLog(@"Show %@ message", @"this"); But, will fail if I user it NSLog(@"One argument"); because __VA_ARGS__ is nothing, so it produce printf("%s\n", [[NSString stringWithFormat:@"One argument",] UTF8String]); So, the problem is the comma. Because this is macro, __VA_ARGS__ is nothing. So I can't do things like __VA_ARGS__==nil because will produce ==nil and will fail. The question is simple: What to do when __VA_ARGS__ is nothing? Or only use comma when have more arguments.
Tags (comma-separated)
Save Edits
Cancel