diff options
Diffstat (limited to 'stdio-common/scanf3.c')
-rw-r--r-- | stdio-common/scanf3.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/stdio-common/scanf3.c b/stdio-common/scanf3.c new file mode 100644 index 0000000..1a77522 --- /dev/null +++ b/stdio-common/scanf3.c @@ -0,0 +1,30 @@ +#include <stdio.h> +#include <stdlib.h> + +int main(int arc, char *argv) +{ + int n, res; + unsigned int val; + char *s; + + s = "111"; + + val = n = -1; + res = sscanf(s, "%u %n", &val, &n); + printf("Result of sscanf = %d\n", res); + printf("Scanned format %%u = %u\n", val); + printf("Possibly scanned format %%n = %d\n", n); + if (n != 3 || val != 111 || res != 1) + abort (); + + val = n = -1; + res = sscanf(s, "%u%n", &val, &n); + printf("Result of sscanf = %d\n", res); + printf("Scanned format %%u = %u\n", val); + printf("Possibly scanned format %%n = %d\n", n); + if (n != 3 || val != 111 || res != 1) + abort (); + + return 0; + return 0; +} |