在C中扫描两个字符的开关情况



,所以我正在为文本编辑器编写一个程序,并且我设置了一个开关语句,以便当某人进入特定字符时,它将调用函数。例如,如果他们输入"?"它将通过调用函数help()之类的帮助菜单,例如so

scanf("%c", &choice);
switch(choice)
{
case '?':
help();

我的问题是,其中一些选择有两个字符,例如创建一个新文件,他们必须输入字符NF。在某种情况下,我将如何实施它?我需要 " "?还应该将选择作为字符串而不是字符扫描?

case "NF":
newFile();

有一个字符时,可以使用switch语句根据其值做出决定。因为其实际值是一个单字节未签名的整数。但是在这里,您有两个字符,您无法使用switch。您必须使用if..else..else..

if (!strcmp(choice, "NF")) {
    // deal with NF
} else if (!strcmp(size, "SomethingElse")) {
    // deal with it
} // and so on

最新更新