scanf格式控制符
生活随笔
收集整理的這篇文章主要介紹了
scanf格式控制符
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
格式控制
1.%d %o %x %c %s %f %e 無%u格式、%g格式
2.scanf("%3d%3d", &a, &b); 輸入:123456 //a=123,b=456
3.scanf("%2d%*3d%2d", &a, &b);輸入:1234567 //a=12,跳過345,b=67。
4.scanf("%7.2f",&a); //不合法的,不能輸入:12345.67使a的值為12345.67。 數(shù)據(jù)流分隔1.類型分隔scanf("%d%c%f", &a, &b, &c);輸入: 12r1234.567 //scanf接收數(shù)據(jù)時(shí)"r"不匹配,于是"12"轉(zhuǎn)[換成]整型賦值給a a=12,b='r',c=1234.5672.域?qū)挿指魋canf("%2d%3f%4f", &a, &b, &c);輸入:123456789012345 //a=12,b=345,c=67893.隱示分隔??崭瘛⑻穹?#xff08;'\t')、換行符('\n')默認(rèn)數(shù)據(jù)分隔符。4.顯示分隔符。scanf("a=%d,b=%f,c=%f", &a, &b, &c);輸入數(shù)據(jù)應(yīng)該為:a=1234,b=67.8,c=98.123 數(shù)據(jù)流中字符控制或者說是字符截止條件。是則讀,否不讀,但是剩余字符仍在流中,注意清理。const char* p = "12232114687ABC12356";sscanf(p, "%[123]", buf); // 把是'1'或'2'或'3'的字讀讀到buf中,buf="1223211",123無關(guān)順序,等同于%[1-3]或%[3-1],【-】?jī)啥说?字符 為起始字符。%[3-14] //%[3214]%[A-Za-z] //只取字母%[^A-Za-z] //取字母之外的所有字符"%[a-zA-Z]%[0-9]", buf1, buf2 //"aB12" buf1="aB",buf2="12""%[^\n]" //取一行字符,但是流中還會(huì)存在一個(gè)換行,fflush(stdin) or "%[^\n]%*c";"%*[^\n]%*c" //就表示跳過一行"%-20[^\n]" //就表示讀取\n前20個(gè)字符。
?
轉(zhuǎn)載于:https://www.cnblogs.com/startnow/p/5040092.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的scanf格式控制符的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab 不同尺度的矩阵存储
- 下一篇: 上struts2的xml在lt;resu