この問題は文字列を解析するのに役立ちます。文字列を解析するとゴミが出る
私はCフィールドから来たものではありませんので、私がしているばかげたことに気をつけてください。
私はこれを持っている:
#include <stdio.h>
#include <string.h>
char DataIn[65] = "WV,000B,404C494748543B.";
int main()
{
char *p = DataIn;
puts(DataIn);
for (int count = 0;count<2 ; ++count) {
p = strstr(p, ",");
if (!p)
break;
p++;
}
char *endPointer = strchr(p, '.');
*endPointer = '\0';
puts(p);
}
私はこの例から必要な出力である:404C494748543B
(異なる長さを有することができます)。
私は通常そのOK、時には、は一度だけしばらくでp
、を印刷するとき、私はこれを取得:
404C494748543B
X
@LIGHT;
��
@LIGHT;
��03
+ゴミいくつかの以前のデータを含んでいます。
データを抽出する方法に問題がありますか?
どの入力がゴミを生成していますか? –
[最小限の完全で検証可能な例](http://stackoverflow.com/help/mcve)を投稿してみませんか? – MikeCAT
'p = strstr(p、"、 ");' - > 'p = strstr(prev、"、 ");' ... print prev。 – BLUEPIXY