Re: [問題] fscanf 如何避開 [XXX] 這樣類型的字
※ 引述《onicalz ()》之銘言:
: ︳뀠引述《smallworld (褲落魔法屎)》之銘言:
: : 我得到的結果是空a 因為照scanf說明 %[^這邊的字被無視 當作讀取終止條件]
: : 用%[][a-z0-9A-Z]讀入[]在去抓中間的吧
: while(fscanf(fp,"%[A-Za-z0-9]",stemp)!=EOF)
: {
: // 先只讀 A-Za-z0-9
: fscanf(fp,"%[^A-Za-z0-9]",stemp) ;
: //再把不屬於的部分讀掉
: }
: 這樣就可以只讀純文字了
: 也就是說 讀的到 [] 裡面的字
: 只是有缺點就是
: 要是有個字是 test.c 如果要把他視為一個字
: 那可能會跟 .(句點) 搞混
: 所以可能還要在加上一些判斷式吧
: 是嗎 ?
你的目的就是讀進[]裡面的東西嗎
char str[] = "[abc.txt]";
char tmp[20];
sscanf(str, "[%[^]]]", tmp);
這樣 tmp[] 就是 abc.txt 了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.83.81
推
02/28 03:30, , 1F
02/28 03:30, 1F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章