我是C语言的新手,对于如何通过字符数组使用字符串仍然有些困惑。

在我的C程序中,我接受来自用户的命令:

char command[20];
scanf("%s",command);

当然,之后,我想弄清楚他们键入了什么命令(类似于:“if (command == "hello"),然后执行一些操作”)。我知道这在C语言中是不可能的,因为我正在将字符串文字与字符数组进行比较,但是哪种方法比较好呢?我尝试使用strcmp(command, "hello")仍然出现错误。

您可以提供的任何建议将不胜感激。谢谢!

最佳答案

当字符串相同时,strcmp返回0。我有使用strcmp比较字符数组和字符串文字的代码,当它不起作用时我很困惑。事实证明我认为在字符串相同时将返回1是错误的!

也许您犯了同样的错误?

关于C-比较字符串文字和字符数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18026445/

10-11 02:42
查看更多