• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: printf with "%@"
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: printf with "%@"


  • Subject: Re: printf with "%@"
  • From: Piers Uso Walter <email@hidden>
  • Date: Fri, 11 Aug 2006 18:41:32 +0200


Am 11. Aug 2006 um 18:19 schrieb Dirk Stegemann:

Hi,

Am 11.08.2006 um 19:08 schrieb Roland Silver:
The trouble with NSLog is that it prints all that extra stuff before the actual formatted message. For example,
NSLog(@"sender=%@\n", sender);
logs this:
2006-08-11 10:06:29.545 EmulatorV4.17.04[1380] sender=<MenuItem: 0x449040 Ad Hoc Test>
in the Run log, rather than just:
sender=<MenuItem: 0x449040 Ad Hoc Test>


It's easy to write such a function.


Something like this should do. [not tested beyond compilability and the primitive test case in main()]



#import <Foundation/Foundation.h>

int printWithAtFormat(NSString *aFormatString, ...)
/*" Raises an NSInvalidArgumentException if aFormatString is nil. "*/
{
va_list myArgs;
NSString *outputString;

va_start(myArgs, aFormatString);
outputString = [[NSString alloc] initWithFormat:aFormatString arguments:myArgs];
va_end(myArgs);
int retval = printf("%s", [outputString lossyCString]);
[outputString release];
return retval;
}


int main(int argc, const char *argv[])
{
	NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
	NSArray *array = [NSArray arrayWithObjects:@"A", @"B", nil];

printf("printf: array = %s [%d elements]\n", [[array description] lossyCString], [array count]);
printWithAtFormat(@"printWithAtFormat: array = %@ [%d elements]\n", array, [array count]);
[pool release];
return 0;
}




With kind regards

Piers

--
Piers Uso Walter <email@hidden>
ilink Kommunikationssysteme GmbH

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >printf with "%@" (From: Roland Silver <email@hidden>)
 >Re: printf with "%@" (From: Dirk Stegemann <email@hidden>)
 >Re: printf with "%@" (From: Roland Silver <email@hidden>)
 >Re: printf with "%@" (From: Dirk Stegemann <email@hidden>)

  • Prev by Date: Re: Two views
  • Next by Date: Re: Two views
  • Previous by thread: Re: printf with "%@"
  • Next by thread: Re: printf with "%@"
  • Index(es):
    • Date
    • Thread