NG
Lv 7
NG asked in 電腦與網際網路程式設計 · 8 years ago

sscanf 內的*是做什麼用的??

sscanf(d, "%d%*c%d%*c%d", &month,&day,&year);

我不太懂 sscanf內的 %*c 做什麼用的

假設d="10/22/2003"

尤其是 %後面有個*

2 Answers

Rating
  • 夏明
    Lv 4
    8 years ago
    Favorite Answer

    板大你好!

    你的問題:

    sscanf內的 %*c 做什麼用的

    假設d="10/22/2003"

    尤其是 %後面有個*

    %*c 的意思是字串d裡面對應位置的字元資料不賦值。

    sscanf(d, "%d%*c%d%*c%d", &month,&day,&year);

    會先讀到字串d裡的一個整數10然後賦值給month

    然後讀到字元/不會賦值,再讀到整數22賦值給day,以此類推。

    會照""裡面指定的資料格式順序讀下去……

    %* 就是遇到某種類型的資料不賦值。

    以下的範例給板大參考:

    http://codepad.org/IzBTC4cf

    • Login to reply the answers
  • re
    Lv 4
    8 years ago

    %*c

    讀取一個字元但是不存到變數中

    在範例中會讀取到斜線 /

    • Login to reply the answers
Still have questions? Get your answers by asking now.