【发布时间】:2013-11-16 14:10:11
【问题描述】:
我正在做一项工作,暗示使用指令在文件中执行某些操作,这些操作将从存档中读取,或者将通过输入给出。
正是我的问题涉及输入给出的指令的操作。
假设我给我的程序以下指令:
select 7
insert "foo foo"
delete 8
在下面显示的代码中,我将在一个字符串中得到完整指令(如上所示):
char input[256];
int i;
printf("Insert an instruction: ");
fgets(input, 256, stdin);
/* Newline removal */
for(i = strlen(input)-1; i && input[i] < ' '; i--)
input[i] = 0;
现在,如您所见,说明分为两部分,首先是要执行的操作。举个例子,动作如下:
select
insert
delete
然后是将伴随该指令的数字或字符串。在给出的示例中:
7
"foo foo"
8
所以,基本上,我有完整的指令,但我希望该指令包含在两个单独的字符串中,这样我可以更好地使用它们。
我该怎么做?我需要以其他方式输入,还是拆分字符串?或者我需要两个以上的字符串来应对这种情况?
【问题讨论】:
-
您是想自己用自己的循环来做这件事,还是想知道应该如何使用标准库函数(甚至是正则表达式库或像 弯曲)?
-
我认为第二个选项没有太多必要(目前)。