比较 2 个字符串并获得错误预期表达式

标签 c string compare cs50

我正在进行一个项目,您可以在其中输入姓名并打印首字母。当我尝试比较字符串时,出现“预期表达式”错误。我做错了什么?

#include <stdio.h>
#include <stdlib.h>
#include <cs50.h>
#include <string.h>
#include <ctype.h>

int main(void) {
   printf("Name: ");
   string name = GetString();
   printf("\n");

   int length = strlen(name);
   string compair1 = " ";
   for(int l = 0;l<=length;l++) {
      char compair2 = name[l];
      int  res = strcmp(compair1,&compair2);
      if(res == 0) {
         printf("found blank space");
      }
   }
}

最佳答案

  • 如果你只是想找空间,那么你可以简单地这样做:

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <ctype.h>
    
    int main(void)
    {
       printf("Name: ");
       char name[20];
       gets(name);
       printf("\n");
    
      int length = strlen(name);
      for(int l = 0;l < length;l++)
      {
          if(name[l] == ' ')
          printf("found blank space");
      }
    }
    

关于比较 2 个字符串并获得错误预期表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34981305/

相关文章:

php - 集合中所有可能的组合

c - Readline 完成问题

c - 打印链接列表时出现意外输出

java - 将两个字符串与新行合并

java - 使字符串静态有什么用

java - 比较通用项目?

c - 在实现文件中不必要地使用 extern?

python - 如何检查平面列表中是否有重复项?

javascript - 将数组值与字符串进行比较

php - 如何比较 PHP 中的 MySQL 版本?