程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 一種scanf

一種scanf

編輯:關於C++

scanf中一種很少見但很有用的轉換字符:[...]和[ ^...]。

#include < stdio.h >
main() {
    char strings[100];
    scanf("%[1234567890]", strings);
    printf("%s", strings);
    return 0;
}

運行,輸入:1234werew後,結果是:1234。

通過運行可以發現它的作用是:如果輸入的字符屬於方括號內字符串中某個字符,那麼就提取該字符;如果一經發現不屬於就結束提取。該方法會自動加上一個字符串結束符到已經提取的字符後面。

scanf("%[^1234567890]",strings); 它的作用是:如果一經發現輸入的字符屬於方括號內字符串中某個字符,那麼就結束提取;如果不屬於就提取該字符。該方法會自動加上一個字符串結束符到已經提取的字符後面。

注意:方括號兩邊不能空格,如:scanf("%[ 1234567890 ]",strings); scanf("%[ ^1234567890]",strings); 不讓空格也會算在裡面的。

用這種方法還可以解決scanf的輸入中不能有空格的問題。只要用scanf("%[^\n]",strings); 就可以了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved