问题描述
我正在尝试创建一个响应用户输入的多个命令的应用程序。问题是这些命令有多个参数。一些例子是
login 'username' 'password'
add song 'song_name' 'description' 'genre' 'link'
输入被读入一个字符数组。
char recv[max]=" ";
if (read (fd,recv,sizeof (recv)) < 0)
{
perror ("[server]Error on read () from client.\n");
return errno;
}
这是使用服务器的更大 uni 项目的一部分,所以这就是使用 read() 的原因。最大值定义为 1024。
虽然我可以使用 strstr() 来识别哪个命令是哪个命令,但我不确定如何将用户名、密码等作为单独的子字符串获取。
我知道我可以通过将输入+命令长度复制到另一个字符中来摆脱命令部分,因为它是固定的,但我很想知道如何选择两个 ' 之间的每个子字符串. strtok() 能完成这项工作吗?
提前致谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)