我使用的fscanf讀取其中有像
數行的文件< -whitespace->字符串< -whitespace-> optional_3rd_column製作的fscanf忽略可選參數
我希望提取出每個數字和字符串列,但忽略3rd_column如果它存在
實施例的數據:
12 foo的東西
03巴
24東西#randomcomment
我想提取12,foo; 03,酒吧; 24,而忽略了一些「東西」和「#randomcomment」
我現在有類似
while(scanf("%d %s %*s",&num,&word)>=2)
{
assign stuff
}
然而,這並不與任何第三列線工作。我怎樣才能讓它忽略第二個字符串後的所有內容?
是的..但我目前正在使用scanf匹配> = 2的項目數來檢測文件的有效部分......如果我可以在scanf本身中集成進程,以保持while循環條件不變 – 2008-10-29 04:42:10
我不確定我是否理解,sscanf的工作原理與scanf相同,即它會返回匹配項的數量,因此您可以使用相同的邏輯,即while(fgets(buf ,size,stdin)!= NULL && sscanf(buf,「%d%s」,#,&word)== 2){assign stuff}。 – 2008-10-29 04:51:37