C++ 声明要传递给函数的'char'

C++ 声明要传递给函数的'char',c++,C++,很抱歉,这是一个非常简单的问题,但我找不到答案…我实现了一个字符堆栈,带有一个推送函数,该函数接收一个字符以推送到堆栈中。但是,我不知道如何实际声明一个char以推入堆栈 我尝试过这样做,但我得到一个错误,说我正在尝试从常量字符*转换为字符: int main(){ char_stack stack; char c = "x"; s1.push(c); } 我也尝试过这样做,但我认为这使c变成了char*,因为我的push函数只接受char,所以我得到了另一个错误 in

很抱歉,这是一个非常简单的问题,但我找不到答案…我实现了一个字符堆栈,带有一个推送函数,该函数接收一个字符以推送到堆栈中。但是,我不知道如何实际声明一个char以推入堆栈

我尝试过这样做,但我得到一个错误,说我正在尝试从常量字符*转换为字符:

int main(){
    char_stack stack;
    char c = "x";
    s1.push(c);
}
我也尝试过这样做,但我认为这使c变成了char*,因为我的push函数只接受char,所以我得到了另一个错误

int main(){
    char_stack s1;
    char c[] = "p";
    s1.push(c);
}

谢谢

正确的方法是:

char c = 'p';

正确的做法是:

char c = 'p';

尝试使用
charc='x'。您尝试的是定义一个字符串(char数组)并分配给char变量。

尝试使用
char c='x'。您尝试的是定义一个字符串(char数组)并分配给char变量。

您需要单引号:
char c='x'并将问题更改为“如何声明字符?”这与堆栈无关……谢谢……哈哈。我刚刚重新开始编程,所以我忘记了很多东西,但仍然记得堆栈之类的概念并将问题更改为“如何声明字符?”这与堆栈无关……谢谢……哈哈。我刚刚重新开始编程,所以我忘记了很多东西,但仍然记得堆栈之类的概念。