From 4b3dbd354637926b17a30e18898b088184f19f5e Mon Sep 17 00:00:00 2001 From: Olaf Barthel Date: Fri, 22 Oct 2004 15:55:53 +0000 Subject: [PATCH] - Updated the scanf() test to check if the fixes for the scanf() family regarding '%x' and leading zeroes in strings to be parsed are really working. git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14753 87f5fb63-7c3d-0410-a384-fd976d0f7a62 --- test_programs/sscanf_test.c | 48 +++++++++++++++++++++++-------------- 1 file changed, 30 insertions(+), 18 deletions(-) diff --git a/test_programs/sscanf_test.c b/test_programs/sscanf_test.c index cb9abb0..1254e02 100644 --- a/test_programs/sscanf_test.c +++ b/test_programs/sscanf_test.c @@ -10,75 +10,87 @@ main(void) num = sscanf("6", "%d %d", &first, &second); - printf("%d %d\n", num, first); + printf("%s:%d:",__FILE__,__LINE__);printf("%d %d\n", num, first); a = b = c = 0; n = sscanf("","%*d,%d,%d",&a,&b,&c); - printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); a = b = c = 0; n = sscanf("1,2,3","%*d,%d,%d",&a,&b,&c); - printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); a = b = c = 0; n = sscanf("1,2","%*d,%d,%d",&a,&b,&c); - printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); a = b = c = 0; n = sscanf("asdf","*d,d,d",&a,&b,&c); - printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, b = %d, c = %d\n",n,a,b,c); memset(str,0,sizeof(str)); n = sscanf("asdf","%[abc]",str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); memset(str,0,sizeof(str)); n = sscanf("asdbbfc","%[abc]",str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); memset(str,0,sizeof(str)); n = sscanf("","%[abc]",str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); memset(str,0,sizeof(str)); n = sscanf("abcdef","%[abc]",str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); a = b = c = 0; n = sscanf("-","%d",&a); - printf("n = %d, a = %d\n",n,a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); a = b = c = 0; n = sscanf("-4,-","%d,%d",&a,&b); - printf("n = %d, a = %d, b = %d\n",n,a,b); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, b = %d\n",n,a,b); memset(str,0,sizeof(str)); n = sscanf("1 abc","%d %4c",&a,str); - printf("n = %d, a = %d, str = '%s'\n",n,a,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d, str = '%s'\n",n,a,str); memset(str,0,sizeof(str)); n = sscanf("abc","%4c",&a,str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); a = 0; n = sscanf("17","%i",&a); - printf("n = %d, a = %d\n",n,a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); a = 0; n = sscanf("017","%i",&a); - printf("n = %d, a = %d\n",n,a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); a = 0; n = sscanf("0x17","%i",&a); - printf("n = %d, a = %d\n",n,a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); + + a = 0; + n = sscanf("0x017","%i",&a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); + + a = 0; + n = sscanf("0x017","%x",&a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); + + a = 0; + n = sscanf("0017","%x",&a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %d\n",n,a); a = 0; n = sscanf("0x80000000","%i",&a); - printf("n = %d, a = %u\n",n,a); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, a = %u\n",n,a); memset(str,0,sizeof(str)); n = sscanf("1,e","%*d,%[abc]",str); - printf("n = %d, str = '%s'\n",n,str); + printf("%s:%d:",__FILE__,__LINE__);printf("n = %d, str = '%s'\n",n,str); return(0); }