sscanf 用法基础学习
来源:岁月联盟
时间:2009-02-15
sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者以固定字符串为输入源。比如说sscanf("12345","%s",buf) 这里的输入是"12345"这个字符串,然后以字符串的形式存放在buf中。
实例一
char buf[512] = {0};
sscanf("123456 ", "%s", buf); //把"123456"字符串以字符串格式输入buf
printf("%s/n", buf); //结果为:123456
实例二
sscanf("123456 ", "%4s", buf); // 取最大长度为4字节的字符串。
printf("%s/n", buf); // 结果为:1234
实例三
sscanf("123456 abcdedf", "%[^ ]", buf); //取遇到空格为止字符串。
printf("%s/n", buf); //结果为:123456
实例四
sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf); //取仅包含1到9和小写字母的字符串。
printf("%s/n", buf); //结果为:123456abcdedf
实例五
sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf); //取遇到大写字母为止的字符串。
printf("%s/n", buf); //结果为:123456abcdedf
sscanf里面对字符串的处理 有点像正则表达式 不过功能就略逊一筹了。