| ||||||||
Technical Support Support Resources Product Information | GENERAL: LIMIT STRING OUTPUT IN PRINTF USING %SInformation in this article applies to:
QUESTIONI am using the following sprintf statement to limit a string output. However it outputs more than the 5 characters specified. In fact, it even outputs a new line ('\n') sequence that is part of str. sprintf (buf, "string = %5s", str) Is this a problem with the Keil C Compiler? ANSWERNo, this is standard ANSI behaviour. You need to specify a precision (number after the dot '.') in the %s format parameter to limit size of the string printed. The precision field is a non-negative number that specifies the number of characters to print. Example: sprintf (buf, "string = %.5s", str) Using this format string, the string passed by str will be truncated after five characters. MORE INFORMATION
Last Reviewed: Friday, July 15, 2005 | |||||||
| ||||||||