sscanf函数的控制格式中有一个规则,如果%号和[]结合,可以从一个字符串中读取不以空格结束的子字符串,如果[]内中第一个字符不为'^',则sscanf函数从输入字符串中扫描到第一个没有出现在[]的任意字符为止,反之,[]第一个字符为'^',则sscanf函数从输入串中扫描到第一个出现在[]的任意字符位置。
举一个例子:我们想把“www.youkuaiyun.com”分离成“www","csdn", "net",利用sscanf的这个特性就可以达到:
char szStr0[12], szStr1[12], szStr2[12];
sscanf("www.youkuaiyun.com","%[^.],%[^.].%s",szStr0, szStr1, szStr2);
执行完毕,szStr0的内容为”www“,szStr1的内容为”csdn“,szStr2的内容为”net“