Search code examples
iosobjective-cnsstringnsuserdefaults

Objective-C iOS 10 Data argument not used by format string when using NSUserDefaults


I have working codes for iOS 8 when I want to convert it to Xcode 8 gives me that lines warning

Data argument not used by format string

My codes clear why giving this warning ?

 NSString *name1 =[[NSUserDefaults standardUserDefaults] stringForKey:@"name1"];
    NSString *name2 =[[NSUserDefaults standardUserDefaults] stringForKey:@"name2"];
    username  =  [NSString stringWithFormat:@"%@%@", @"", name1,name2];

Where I can mistake ?


Solution

  • The problem you are passing 3 argument instead of 2, by mistake or accidentally you have added @"" as first formate specifier, so here name2 is extra argument for format specifier that is the reason you are getting this warning.

    It's should be:

    username  =  [NSString stringWithFormat:@"%@%@", name1,name2];
    

    Instead of

    username  =  [NSString stringWithFormat:@"%@%@", @"", name1,name2];