scanf("%[^\n]", str)正則用法


1

默認情況下 scanf 一讀入空格或者換行字符就結束讀入

[^\n]表示一讀入換行字符就結束讀入。這個是scanf的正則用法。

[^,\n]表示一讀入逗號或者換行字符就結束讀入。

[^,\n]讀出數據后,逗號或者換行字符還在緩沖區內,如果后期以讀取字符串的形式讀出數據,會直接跳過逗號或者換行字符;也可以用getchar讀出逗號或者換行符

 

2 那么如果scanf("%*[\n]")表示該輸入項讀入后不賦予任何變量,即scanf("%*[^\n]")表示跳過一行字符串。

scanf("%[^\n]%*c", str),其中%*c,表示讀取\n,但是不賦值給任何變量,相當於過濾了換行符

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM