[問題] 請教各位大神一個sscanf的問題
大家好,小的是亂世的Zoro,一值都有在偷偷的逛ptt偷學,第一次跟大家打招呼 XD
話說我最近遇到一個sscanf()的問題想請前輩Wiz們指點~
有一個data.o檔案,裏面有一串mapping是
all_items (["188931_ONAME":"測試裝備","188931_UID":"zoro",
"188931_DATA":(["value":20000,"limit_con":60,
"name":"測試裝備",
"armor_prop":(["armor":60,"defense":50,]),
"id":"test eq","limit_str":40,]),
"188931_VALUE":1000000,"188931_TIME":1307688931,
"188931_FILE":"/obj/temp/test_eq.c",])
也就是前面有一串隨機數字加上 _"xxx"當做index,我想以把all_items整串輸入進去後
,抓取 _ONAME 當關鍵字然後把前面的隨機數字讀出來指定該物品
下面是這段Code,現在就一值卡在綠色那行,請各位指點一下~
-----
int do_list(string arg)
{
string msg, name, *items;
int i, n, j;
if(!sizeof(all_items)) return 0;
msg = "";
items = keys(all_items);
n = sizeof(items);
for(i=0;i<n;i++)
{
if (sscanf(items, "%d_%s", j, name)==2 && name == "ONAME")
{
if ( (time()-all_items[j+"_TIME"]) < DEADLINE_TIME )
{
msg += sprintf(" (%-6d) %-24s %8s %-12s %s\n",
j,
filter_color(all_items[items])+"("+all_items[j+"_OID"]+")",
filter_color(MONEY_D->money_str(all_items[j+"_VALUE"])),
time_string(86400 - (time()-all_items[j+"_TIME"])),
all_items[j+"_UNAME"]+"("+all_items[j+"_UID"]+")");
}
}
}
this_player()->start_more(msg);
return 1;
}
----
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 58.115.132.200
※ 編輯: mantohu 來自: 58.115.132.200 (06/10 15:35)
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):