为什么我的单个字符长度超过一个字符

Why is my single char more than one character long?

本文关键字:字符 一个 我的 单个 为什么      更新时间:2023-10-16

我正在尝试创建一个由字符串的第一个字符组成的char*。字符串保持在字符串向量中。

我尝试过以下几种:

char* value = &cards[0][0]; cout<<"Value "<<i<<" == "<<value<<endl;

char* value = &cards[0].front(); cout<<"Value "<<i<<" == "<<value<<endl;

("卡片"是一个字符串的矢量,每个字符串都是一张普通52卡组中的卡片)

但无论我做什么,总是等于整个字符串。

如何使成为单个字母?

按照惯例,char*被解释为以null结尾的字符串文字。所以cout输出从value指向的字符到字符串末尾的所有内容。

如果您只想要一个字符,可以使用char而不是char*:

char value = cards[0][0];
cout << "Value " << i << " == " << value << endl;
相关文章: