mirror of
https://github.com/adtools/clib2.git
synced 2025-12-08 14:59:05 +00:00
- 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
This commit is contained in:
@ -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);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user