Conversion Characters and Their Meanings
|d|| Reads the input as a signed decimal integer.|
|i|| Reads the input as a signed integer. If the input begins with 0, then the input is assumed to be|
octal. If the input starts with 0x or 0X, then hexadecimal input is assumed; otherwise decimal
input is assumed.
|o|| Reads the input assuming it is a signed octal integer.|
|u|| Reads the input as an unsigned integer.|
|x|| Reads the input as a signed hexadecimal integer.|
|c|| Reads the number of characters specified by the field width as type char, including |
whitespace. If the field width specification is absent, one character will be read. If you want to
ignore preceding whitespace when reading characters, precede the format specification by
a whitespace character.
|s|| Reads a string of successive non white space characters as type char, starting with the next|
non white space character.
||| Reads characters from the specified set between the square brackets. The first character not |
found in the set ends the input. For example, the specification %[ab] will only read successive
characters that are a or b. To include a ']' character in the set, it must be the first character
following the initial left square bracket. Thus %ab] reads characters as long as they are a, b,
or ]. If the first character after [ is ^, then characters are read if they were not in the set that
follows. The specification %[^]ab] reads characters as long as they are not a, b, or ].
|a, A, e, E, |
f, F, G, or g
| Converts the input to type float. A sign, a decimal point, and an exponent in the input|
|%|| Reads a % character that is not stored. Thus the specification to skip a % character is %%.|
|p|| Reads input as a pointer. The argument should be of type void**. The input form is|
implementation defined, so consult your compiler and library documentation.
|n|| No input is read, but the number of characters that have been read from the keyboard up to |
this point are stored in the memory pointed to by the corresponding argument, which should
be of type int*. Reading with this specification does not increment the value of the assignment
count that is returned.
The following three specification:
C s 
Two arguments are required.
If the l length modifier is present, the characters are converted to wchar_t.
Any non white space character other than % will cause scanf_s() to read but not store successive occurrences of the character.
To ignore commas separating values in the input, precede each format specifier by a comma.
The % indicates the start of the format specifier. It must always be present.