sscanf與scanf類似,都是用于輸入的,只是后者以屏幕(stdin)為輸入源,前者以固定字符串為輸入源。比如說sscanf("12345","%s",buf) 這里的輸入是"12345"這個(gè)字符串,然后以字符串的形式存放在buf中。
實(shí)例一
char buf[512] = {0};
sscanf("123456 ", "%s", buf); //把"123456"字符串以字符串格式輸入buf
printf("%s\n", buf); //結(jié)果為:123456
實(shí)例二
sscanf("123456 ", "%4s", buf); // 取長度為4字節(jié)的字符串。
printf("%s\n", buf); // 結(jié)果為:1234
實(shí)例三
sscanf("123456 abcdedf", "%[^ ]", buf); //取遇到空格為止字符串。
printf("%s\n", buf); //結(jié)果為:123456
實(shí)例四
sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf); //取僅包含1到9和小寫字母的字符串。
printf("%s\n", buf); //結(jié)果為:123456abcdedf
實(shí)例五
sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf); //取遇到大寫字母為止的字符串。
printf("%s\n", buf); //結(jié)果為:123456abcdedf
sscanf里面對字符串的處理 有點(diǎn)像正則表達(dá)式 不過功能就略遜一籌了。
實(shí)例一
char buf[512] = {0};
sscanf("123456 ", "%s", buf); //把"123456"字符串以字符串格式輸入buf
printf("%s\n", buf); //結(jié)果為:123456
實(shí)例二
sscanf("123456 ", "%4s", buf); // 取長度為4字節(jié)的字符串。
printf("%s\n", buf); // 結(jié)果為:1234
實(shí)例三
sscanf("123456 abcdedf", "%[^ ]", buf); //取遇到空格為止字符串。
printf("%s\n", buf); //結(jié)果為:123456
實(shí)例四
sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf); //取僅包含1到9和小寫字母的字符串。
printf("%s\n", buf); //結(jié)果為:123456abcdedf
實(shí)例五
sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf); //取遇到大寫字母為止的字符串。
printf("%s\n", buf); //結(jié)果為:123456abcdedf
sscanf里面對字符串的處理 有點(diǎn)像正則表達(dá)式 不過功能就略遜一籌了。