计算字符数组中的字符?

标签 c char

目前我正在尝试根据每个单词的第一个字符对段落进行排序。我正在初始化两个字母(Upper 和 Lower)字符数组,以将单词的第一个字符与数组索引进行比较。

我对问题的计划;

  • 用字母表初始化两个数组,以了解哪个字母表在哪个之前。
  • 有一个函数实际比较第一个字符和两个数组。
  • 返回排序后的单词 :)

我的问题是我试图查看这两个数组是否有 26 个字符以确保每个字母都被计算在内,但它打印出 1,我不知道为什么。

代码:

#include <stdio.h>

int main(int argc, const char * argv[]) {

    char _alphabetUpperCase[100] = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R,","S","T","U","V","W","X","Y","Z"};
    char _alpabetLowerCase[100] = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"};

    int i = 0;
    int n = 0;
    while(_alpabetLowerCase[i] != NULL)
    {
        n = n+1;
        i++;
    }

    printf("%d\n",n);
    return 0;
}

最佳答案

这个“A”与“A”不同。您应该将“A”分配给一个字符。 用相应的 '' 字符替换所有 ""字符串。例如

char _alpabetLowerCase[100] = {'a','b','c' ... };

关于计算字符数组中的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39483142/

相关文章:

C++ u8 literal char 覆盖

c - Arduino WaveHC 收集文件名

c++ - 在 c 中使用 realloc

c - atoi() 不喜欢我在做什么

c - 为什么这些构造使用增量前和增量后未定义的行为?

c - 如何使用内联汇编启用计数器控制中的位?

java - 为什么从 char 中减去错误?

c - 在 C 中对 char* 中的数字求和

java - 从字符串构建 char

无法在声明说明符中指定 'long' 和 'float'