我有这样sscanf的写入可变问题
sprintf(data, "%d|Hello world|Ticket|Offset=44|msgId=1050 %d|%d|%d", r+1,header->m_msgId,header->m_sequence,header->m_offset);
,其中数据是大小100和报头的字符阵列的代码是结构变量。
现在使用的sprintf这整个写入数据后,我想打破这整个数据分为二,然后将其复制到两个新的变量
char var1[100],var2[100];
这可以用sscanf的进行,但是啥子我想的是,在VAR1我想只有部分直到
%d|Hello world|Ticket|Offset=44|msgId=1050
而在VAR2我想,也就是之后的部分
%d|%d|%d
。一种方式是做%[^ \ t}等等,但在这种情况下,var1内的值是正确的,但var2 tab空间内还插入了一些奇怪的字符,在三个%的末尾不能更改格式的数据必须输入到我的变量数据。 请帮我,我怎么可以提前做到这一点使用帮助sscanf.thanks任何帮助的
将1050和%d |%d |%d'分开了什么?必须使用'sscanf()'吗? – hmjd 2012-07-11 12:54:24
发布sscanf()stmts。您正在使用。 – 2012-07-11 13:02:54
@hmjd ya sscanf必须和__tab__分开它。 – Mcolorz 2012-07-11 13:05:02