Cで2つの区切り文字を使用して文字列をカットする方法は?
このプラットフォームでユーザーから文字列を取得しています:
cp <path1> <path2>
パスを新しい文字列 (1 つの文字列への各パス) に取得する必要があります。
strstr
andを使用しようとしましstrtok
たが、機能しません。
パスの長さはわかりません。また、それらがで始まっていることも知っています" \"
(これは私が持っている区切り文字です(space + \
))。
これは私が試したものです #include #include #include
int main()
{
char *c;
char *ch = malloc(1024);
while (strcmp(ch, "exit"))
{
scanf("%[^\n]%*c", ch); //what was the input (cp /dor/arthur /king/apple)
c = malloc(sizeof(strlen(ch) + 1));
strcpy(c, ch);
char *pch = strtok(c, " //");
printf("this is : %s \n", pch); //printed "this is: cp"
}
}