sscanf()用法经典案例

//案例一
#include <stdio.h>
int main()
{
	const char *str="ppp@asdf@asdfasdf@www";
	char n1[20],n2[20],n3[20],n4[20];
	if(4 == sscanf(str,"%[^@]@%[^@]@%[^@]@%[^@]",n1,n2,n3,n4))
	{
		puts("匹配成功!\n");
	}
	else
	{
		puts("匹配失败!\n");
	}
	printf("%s\n%s\n%s\n%s\n",n1,n2,n3,n4);
	return 0;
}

//案例二
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
	char *str = "admin; 123456";
	char *user = (char *)malloc(32);
	char *pwd = (char *)malloc(32);
	
	if(2 == sscanf(str,"%[^;]; %[^;]",user,pwd))
	{
		printf("%s\n%s\n", user, pwd);
	}
	
	return 0;
}

//案例三
#include <stdio.h>
int main()
{
	const char *str = "set 0 temp1 min=10 abc";
	int n1,n2,n3;
	char n4[10];
	if(4 == sscanf(str,"set %d temp%d min=%d %s",&n1,&n2,&n3,n4))
	{
		puts("成功");
	}
	else
	{
		puts("失败");
	}
	printf("%d\n%d\n%d\n%s\n",n1,n2,n3,n4);
	return 0;
}

  

posted @ 2017-06-20 17:13  quliuliu2013  阅读(237)  评论(0)    收藏  举报