我是 C 的新手,并试图拆分一个字符数组(我从 Ardunio 的串行端口接收)。我查阅了一些教程并想出了这个。请帮我调试一下。
char action[10];
unsigned long duration;
void split(char input[20])
{
char *param, *ptr;
param = strtok_r(input, "#", &ptr);
action = *param; // Need help with this line
param = strtok_r(NULL, "!", &ptr);
duration = (unsigned long) *param; // Need help with this line
}
据我了解,strtok_r 在分隔符(#)之后返回一个指向字符的指针。因此,如果我希望 action[] 成为 input[] 的子集字符数组直到分隔符,我该怎么办?
编辑:输入是这样的:“left#1000!”