友情提示:以下文章僅為娛樂(lè)性質(zhì),請(qǐng)勿嚴(yán)肅對(duì)待。
哎呀,大家好啊!小編今天要來(lái)和大家聊聊一個(gè)小玩意兒——C語(yǔ)言庫(kù)函數(shù)中的gets()。
先不說(shuō)它干啥用的,先說(shuō)說(shuō)它的名字吧。怎么看著這個(gè)名字就讓人產(chǎn)生了一股搞笑的感覺(jué)呢?是不是感覺(jué)這名字聽(tīng)起來(lái)有點(diǎn)萌,有點(diǎn)傻,還有點(diǎn)可愛(ài)呢?
不過(guò)話又說(shuō)回來(lái)了,這個(gè)gets()其實(shí)是縮寫(xiě),全稱是get string啦。它的作用就是來(lái)讀取一個(gè)字符串。那么問(wèn)題又來(lái)了,它可是C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中的函數(shù),那就意味著,只要你會(huì)用C語(yǔ)言,你就能夠嗨皮地用它咯!
話說(shuō)回來(lái),這個(gè)小玩意兒可真是用起來(lái)簡(jiǎn)單姐。它只要加一個(gè)參數(shù)就好啦,那個(gè)參數(shù)就是存儲(chǔ)你輸入字符串的char型數(shù)組。當(dāng)你調(diào)用這個(gè)函數(shù)之后,它就會(huì)堵著,讓你去輸入字符串,只要輸入完了,它就會(huì)返回并且把字符串存儲(chǔ)在那個(gè)數(shù)組里面。是不是很方便呢?
那么好玩的事情出現(xiàn)了,它為啥會(huì)堵住呢?沒(méi)錯(cuò),就是因?yàn)樗且粋€(gè)阻塞輸入函數(shù)。有些同學(xué)可能不太明白,那我就給大家科普一下吧。
所謂阻塞,就是當(dāng)一個(gè)進(jìn)程調(diào)用了一個(gè)阻塞函數(shù)之后,這個(gè)函數(shù)會(huì)堵?。ㄊ裁匆馑??就是流程要在這里等著,什么都干不了),而進(jìn)程會(huì)被掛起。直到這個(gè)函數(shù)運(yùn)行完畢之后,才會(huì)被喚醒,繼續(xù)往下執(zhí)行。別擔(dān)心,這個(gè)阻塞時(shí)間不會(huì)太長(zhǎng),只是等待輸入的一瞬間而已。
作為一個(gè)阻塞函數(shù),gets()也有引人犯困的弊端呢。想象一下,如果我們輸入的字符超出了緩沖區(qū)的大小,那么就會(huì)發(fā)生什么呢?雖然通常情況下這個(gè)函數(shù)會(huì)很快運(yùn)行完畢,但有時(shí)候它確實(shí)有可能在運(yùn)行的過(guò)程中遇到麻煩,造成“溢出”這個(gè)世紀(jì)難題啊!這也是為什么現(xiàn)在C語(yǔ)言標(biāo)準(zhǔn)不建議使用gets(),而是推薦使用更安全的fgets()。看來(lái),我們還要再多學(xué)一手??!
好了,小編的科普時(shí)間已經(jīng)到了,各位可愛(ài)的讀者們有沒(méi)有心癢癢想要試試呢?趕快去試試吧,相信你們都能輕松駕馭它的! www.aihben.cn 寧波海美seo網(wǎng)絡(luò)優(yōu)化公司 是網(wǎng)頁(yè)設(shè)計(jì)制作,網(wǎng)站優(yōu)化,企業(yè)關(guān)鍵詞排名,網(wǎng)絡(luò)營(yíng)銷(xiāo)知識(shí)和開(kāi)發(fā)愛(ài)好者的一站式目的地,提供豐富的信息、資源和工具來(lái)幫助用戶創(chuàng)建令人驚嘆的實(shí)用網(wǎng)站。 該平臺(tái)致力于提供實(shí)用、相關(guān)和最新的內(nèi)容,這使其成為初學(xué)者和經(jīng)驗(yàn)豐富的專業(yè)人士的寶貴資源。
聲明本文內(nèi)容來(lái)自網(wǎng)絡(luò),若涉及侵權(quán),請(qǐng)聯(lián)系我們刪除! 投稿需知:請(qǐng)以word形式發(fā)送至郵箱18067275213@163.com
優(yōu)化越來(lái)越難了