繁体   English   中英

“ char”之前的预期主要表达式

[英]expected primary-expression before 'char'

#include <iostream>

using namespace std;

int main() {
    char* chars[26] = {"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 a;
    char x;

    while (a < 26) {
        x = char* chars[a];
        a = a + 1;
    }

    return 0;
}

在上面说x = char* chars[a]; 一个错误不断弹出说:

“预期的主表达式在'char'之前”

我到处搜索过,使用了不同类型的解决方案,但是它们不起作用。 我是c ++的新手,这只是我的第二个项目。

    x = *char[a];

要么

    x = chars[a][0];

确实删除了错误,但是当我这样做时:

    cout << x;

它不显示x的值。 因此,我不确定它是否有效。

它应该是:

#include <iostream>

using namespace std;

int main() {
    char chars[26] = {'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 a=0;
    char x;

    while (a < 26) {
        x = chars[a];
        a = a + 1;
    }

return 0;

}

它是一个单引号,因为它是一个char而不是字符串,您应该使用0初始化a,这样它就不会包含垃圾。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM