gcc 4.4.2
我有以下代码:
char channels[] = "NumberOfChannel = [2]";
sscanf(channels, "%*[^=]= %d", &chan);
我想知道这意味着什么。据我所知。它忽略了等号。
'^ ignore the character ='
那会是正确的吗?
非常感谢,
答案 0 :(得分:3)
%*[^=]
[^=]
表示匹配不包含=
的字符串。 这是POSIX extension。 *
表示丢弃匹配的结果。
(顺便说一下,要正确获得chan
您需要sscanf(channels, "%*[^=]= [%d]", &chan);
。)