色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > 詳解格式化輸入函數scanf

詳解格式化輸入函數scanf 時間:2018-07-27      來源:未知

C語言中常用的輸入可以有多種方式,如scanf(),getchar(),gets()。它們的功能都類似(獲取鍵盤輸入的數據),但scanf()因功能使用、函數簡單,而深受編程者喜愛。

scanf()函數功能: 執行格式化輸入(用戶可以按照指定格式輸入數據)

scanf()函數原型: int scanf(char *format[,argument,...]);

scanf()從標準輸入設備(通常指鍵盤) 讀取輸入的信息,并將讀入任何固有類型的數據自動變換成適當的機內格式。其格式為: scanf("<格式化字符串>",<地址表>);scanf()函數返回成功賦值的數據項數,出錯時則返回EOF。例如以下程序

int mian(void)

{

int a;

scanf(“%d”,&a);

return 0;

}

當程序運行到scanf(“%d”,&a)時會阻塞,等待鍵盤輸入。如果我們在鍵盤上按下“5”、“7”然后回車了,那么“5”、“7”、回車鍵“\n”都被逐一放入緩沖區里,又由于回車鍵是特殊的字符(可實現清除行緩沖),它先將字符'\n'添加到緩沖區,隨后便清除緩沖區 ,將其中的所有字符發送到一個叫做輸入列表的地方 ,scanf函數以及其他標準輸入函數便會立刻從輸入列表中獲取內容。

上述程序按照%d的規則從輸入列表中獲取字符 ,它獲取了'5'、'7',并且將其轉變為整數57,存入了變量a中。

如果我們將程序改為以下形式,

int mian(void)

{

char a[10];

scanf(“%s”,a);

return 0;

}

如果我們還是在鍵盤上按下“5”、“7”然后回車了,那么“5”、“7”、回車鍵“\n”還是一樣被逐一放入緩沖區里;又由于回車鍵是特殊的字符(可實現清除行緩沖),它先將字符'\n'添加到緩沖區,隨后便清除緩沖區 ,將其中的所有字符發送到一個叫做輸入列表的地方 ,scanf函數以及其他標準輸入函數便會立刻從輸入列表中獲取內容。

程序按照%s的規則從輸入列表中獲取字符 ,它獲取了'5'、'7',并且將其轉變為字符串“57”,存入了變量a中。

總之,我們輸入的數據及緩沖中的數據都是一致的,只不過scanf函數根據不同的格式進行了不同的轉換而已(省去了程序員自己轉換數據的麻煩)。

上一篇:嵌入式網絡NFS文件系統搭建流程

下一篇:linux中斷編程、中斷編程詳解

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 精品国产V无码大片在线观看 | 日韩在线中文高清在线资源 | 欧美亚洲日韩国产网站 | 日本一区二区三区在线观看视频 | asian日本java少妇乱子另类 | 久久网站视频 | 中文字幕在线无码手机一区 | 熟女无套高潮内谢视频 | 精品人妻无码一区二区三区软件 | 穆斯林少妇xxxxx潮喷 | 特级毛片A级毛片免费观看网站 | 初尝人妻少妇中文字幕 | 久久久精品人妻无码专区不卡 | 国产噜噜噜噜久久久久久久久 | 亚洲h成年动漫在线观看网站 | 天堂AV无码大芭蕉伊人AV | 免费裸体无遮挡黄网站免费看 | 亚洲一线产区二线产区区别在 | 亚洲国产呦萝小初 | 亚洲精品乱码8久久久久久日本 | 狠狠色丁香婷婷综合尤物 | 超清精品丝袜国产自在线拍 | 人妻插B视频一区二区三区 亚洲成片在线观看12345ba | 亚洲日韩中文字幕日本 | 大地资源在线观看中文免费 | 国内自拍视频在线 | 日本女人一级片 | 久久精品视屏 | 又黄又湿免费高清视频 | 亚洲AV无码AV在线影院 | 四虎亚洲中文字幕无码永久 | 久久久99品牌的特色产品 | AV永久天堂一区二区三区 | 国产精品久久久久久久久岛国 | 女人高潮娇喘抽搐喷水视频 | 好紧好爽午夜视频 | 黑人异族巨大巨大巨粗 | 欧美日韩精品久久久久 | 亚洲av在线一区二区三区 | 国产成人啪精品视频免费视频 | 日日碰狠狠添天天爽超碰97 |