C语言 命令解析器代码
时间: 2023-12-11 12:15:00 浏览: 28
以下是一个简单的C语言命令解析器的代码示例:
#include <stdio.h>
#include <string.h>
#define MAX_COMMAND_LENGTH 100
void execute_command(char *command);
int main() {
char command[MAX_COMMAND_LENGTH];
while (1) {
printf("> ");
fgets(command, MAX_COMMAND_LENGTH, stdin);
command[strlen(command) - 1] = '\0'; // 去掉换行符
execute_command(command);
}
return 0;
}
void execute_command(char *command) {
if (strcmp(command, "hello") == 0) {
printf("Hello, world!\n");
} else if (strcmp(command, "date") == 0) {
system("date");
} else if (strcmp(command, "ls") == 0) {
system("ls");
} else if (strcmp(command, "exit") == 0) {
exit(0);
} else {
printf("Unrecognized command: %s\n", command);
}
}
在这个示例中,我们定义了一个名为execute_command的函数来执行命令。在主函数中,我们使用fgets函数从标准输入读取命令,并将其传递给execute_command函数进行处理。在execute_command函数中,我们使用strcmp函数比较输入的命令和可识别的命令,然后执行相应的操作。如果输入的命令不是我们可识别的命令之一,则输出一个错误消息。