日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > > 充電吧
[導讀]?? 原理:?? 程序的輸入都會提前建立一個緩沖區(qū),即輸入緩沖區(qū)。一次輸入過程是這樣的,當一次鍵盤輸入將輸入的數(shù)據(jù)存入輸入緩沖區(qū),而cin函數(shù)直接從輸入緩沖區(qū)中 取得數(shù)據(jù)。正因為cin函數(shù)是直接從緩沖

??

原理:?? 程序的輸入都會提前建立一個緩沖區(qū),即輸入緩沖區(qū)。一次輸入過程是這樣的,當一次鍵盤輸入將輸入的數(shù)據(jù)存入輸入緩沖區(qū),而cin函數(shù)直接從輸入緩沖區(qū)中

取得數(shù)據(jù)。正因為cin函數(shù)是直接從緩沖區(qū)去數(shù)據(jù)的,所以有時候當緩沖區(qū)中有殘留數(shù)據(jù)時,cin函數(shù)會直接取得這些殘留數(shù)據(jù)而不會請求鍵盤輸入(容易忽略的點)

 #include 
using namespace std;
int main()
{    
     char s[6];  
    cin.getlint(s,4); 
    cout<
    cin.getlint(s,4);    
    cout<
    return 0;
}
輸入:abcdef(enter)
輸出:abc
?
【分析】之所以第一次輸入完后直接程序就結(jié)束了,而不是進行第二次輸入,是因為第一次多輸入的數(shù)據(jù)還殘留在緩沖區(qū)中,第二次輸入就直接從緩沖區(qū)中提取而不會在請求鍵盤輸入,一下探究幾種常見的輸入方式:
?
一,cin>>
該操作符是根據(jù)后面變量的類型讀取數(shù)據(jù)。
輸入結(jié)束條件:遇到Enter,Space,Tab鍵。
對結(jié)束符的處理:丟棄緩沖區(qū)中使得輸入結(jié)束的結(jié)束符(Enter,Space,Tab)
eg2:
#include 
using namespace std;
int main()
{
	char s1[10],s2[10];
	cin>>s1;
	cin>>s2;
	cout<
	cout<
	return 0;
}
?
輸入:abcd efgh
輸出:abcd
     efgh
【分析】第一次讀取字符串時遇到空格則停止了,將abcd讀入s1,并舍棄了空格,將后面的字符串給了第二個字符串,這證明了cin讀入數(shù)據(jù)遇到空格結(jié)束,并且丟棄空格符;緩沖區(qū)有殘留數(shù)據(jù),讀入操作直接從緩沖區(qū)中去數(shù)據(jù)。
?
二,cin.get(數(shù)組名,長度,結(jié)束符)
其中結(jié)束符為可選參數(shù),讀入的字符個數(shù)最多為(長度-1)個,結(jié)束符規(guī)定結(jié)束字符串讀取的字符,默認為enter,若要讀取字符,直接cin.get(char ch)或ch=cin.get()
讀取字符的情況:
輸入結(jié)束條件:enter鍵
對結(jié)束符處理:不丟棄緩沖區(qū)中的enter
cin.get()與cin.get(char ch)用于讀取字符,他們的使用是相識的,
即:ch=cin.get()與cin.get(ch)是等價的。
?
eg3:
#include 
using namespace std;
int main()
{
  char c1, c2;
 ? cin.get(c1);
?  cin.get(c2);
??? cout<
?
輸入:a[Enter]
輸出:a
   97 10
【分析】會發(fā)現(xiàn)只執(zhí)行一次從鍵盤輸入,顯然第一個字符變量取得a,第二個變量取得是Enter,這是一位改函數(shù)不丟棄上次輸入結(jié)束時的Enter字符,所以第一次輸入結(jié)束時緩沖區(qū)中殘留的是上次輸入結(jié)束是的Enter字符!
?
輸入:a b[enter]
輸出:a
  97  32
【分析】顯然第一個字符變量取的‘a(chǎn)’,第二個變量取的是Space,原因同上,沒有丟棄space字符,
讀取字符串的情況:
輸入結(jié)束條件:默認enter鍵(因此可接受空格,Tab鍵),可在第三個參數(shù)上定義結(jié)束符
對結(jié)束符處理:丟棄緩沖區(qū)的enter
?
eg4:
#include
using namespace std;
int main()
{
	char ch,a[20];
	cin.get(a,5,'d');
	cin>>ch;
	cout<
	cout<<(int)ch<
	return 0;
}
?
輸入:12345[enter]
輸出:1234
    53
【分析】第一次輸入超長,字符串按長度取了“1234”,而‘5’仍殘留在緩沖區(qū)中,所以第二次輸入字符沒有從鍵盤讀入,而是直接去了‘5’,所以打印的是53
?
輸入:12d45[enter]
輸出:12
  d
【分析】第二次輸出為d,說明自定義結(jié)束符時不丟棄緩沖區(qū)中的結(jié)束符
?
三,cin.getline()
?
cin.getline(數(shù)組名,長度,結(jié)束符)大體與cin.get(數(shù)組名,長度,結(jié)束符)類似
?
區(qū)別在于:
cin.get()當輸入的字符串超長時,不會引起cin函數(shù)的錯誤,后面的cin操作符會繼續(xù)執(zhí)行,只是直接從緩沖區(qū)中取數(shù)據(jù),但是cin.getline()當輸入超長是開會引起cin函數(shù)的錯誤,后面的cin操作將不再執(zhí)行。
?
eg5:
#include 
using namespace std;
int main ()
{
  char ch, a[20];
  cin.getline(a, 5);
  cin>>ch;
  cout<
?
輸入:12345[enter]
輸出:1234
  -52
【分析】與cin.get()的列子比較會發(fā)現(xiàn),這里的ch并沒有讀取緩沖區(qū)中的5,而是返回了-52,這里其實cin>>ch語句沒有執(zhí)行,是因為cin出錯了!
?
?
    
本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉