diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2016-06-02 18:24:28 +0300 |
---|---|---|
committer | Waldemar Brodkorb <wbx@uclibc-ng.org> | 2016-06-12 11:45:42 +0200 |
commit | e1eceda87b2fa64ab17f3e32c81b9a97edc7cac7 (patch) | |
tree | 468dfb1f0bfc8095475c60b3f6395182520b770e /test/stdio/scanf_m.c | |
parent | 96f2821683ec41a28b5aa6ec92245e47dfee989b (diff) |
tests: add %ms scanf format test
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'test/stdio/scanf_m.c')
-rw-r--r-- | test/stdio/scanf_m.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/test/stdio/scanf_m.c b/test/stdio/scanf_m.c index 0ce78b6e4..e1dde270d 100644 --- a/test/stdio/scanf_m.c +++ b/test/stdio/scanf_m.c @@ -5,20 +5,23 @@ int main(void) { const char *buf = "hello world"; - char *ps = NULL, *pc = NULL; - char s[6], c; + char *ps = NULL, *pc = NULL, *ps2 = NULL; + char s[6], c, s2[5]; - /* Check that %[...]/%c work. */ - sscanf(buf, "%[a-z] %c", s, &c); - /* Check that %m[...]/%mc work. */ - sscanf(buf, "%m[a-z] %mc", &ps, &pc); + /* Check that %[...]/%c/%s work. */ + sscanf(buf, "%[a-z] %c %s", s, &c, s2); + /* Check that %m[...]/%mc/%ms work. */ + sscanf(buf, "%m[a-z] %mc %ms", &ps, &pc, &ps2); if (strcmp(ps, "hello") != 0 || *pc != 'w' || - strcmp(s, "hello") != 0 || c != 'w') + strcmp(ps2, "orld") != 0 || + strcmp(s, "hello") != 0 || c != 'w' || + strcmp(s2, "orld") != 0) return 1; free(ps); free(pc); + free(ps2); return 0; } |