文字列と(\ n)改行を分割しようとしていますが、\nなしで新しい文字列を取得したいと思っています。コードは次のとおりです。ありがとうございます。
token = strtok(NULL,"")
上記のスニペットは「いくつかの文字列と\n」を格納しますが、必要なのは「いくつかの文字列」だけです。
私のデータはこんな感じです。
1,v1,p1,182,1665,unkn
データが次のようになっている場合
char line[] = "1,v1,p1,182,1665,unkn\n";
あなたはこのようなことをすることができます(Cで)
char* p = line + strlen(line) - 1;
for (;*p != ','; --p)
{
;
}
char* lastword = strtok(p + 1,"\n");
あなたがしているのが最初の改行を置き換えることだけであるなら、これははるかに良いです:
char *tmp = strchr (str, '\n');
if (tmp) *tmp = 0;
文字列の最後の改行を置き換える場合は、次の方が適しています。
char *tmp = strrchr (str, '\n');
if (tmp) *tmp = 0;