从矢量C++读取字符时出现问题
Problem reading the characters from vector C++
我试图编写一个简单的代码,给出字母的所有 3 个字符组合,但它没有读取 ASCII 代码 (90( 字符,即"Z"。还有为什么字母在任何 90 行中组合重复?
这是代码:
{
int i, j, k;
char v[90];
for(i=65; i<=90; ++i)
v[i]=(unsigned char)i;
for(i=65; i<=90; ++i)
{
for(j=65; j<=90; ++j)
if(i!=j)
{
for(k=65; k<=90; ++k)
if(j!=k && i!=k)
cout<< v[i] << v[j] << v[k] << ' ';
cout<<endl;
}
cout<<endl;
}
return 0;
}
90 元素数组v
的顶部元素是v[89]
。
你不能使用v[90]
;它不存在。
要么让它char v[91]
,要么改变你使用数组的方式(这里不需要那么多元素(。
char v[90]
创建一个包含 90 个元素的数组,编号为 0 到 89。 通过访问列表的元素 90,您正在访问其他事物使用的内存位,因此您不能期望您放入其中的内容留在那里。 将数组初始化为 91 个元素长应该可以解决这两个问题。
相关文章:
- 从矢量C++读取字符时出现问题
- C++:__aligned(__alignof__) 导致字符数组数据出现问题?
- C++理解计算字符变量的问题
- 将十六进制值设置为用于填充的字符变量时出现问题
- 编写 cin.get() 以接收字符数组时出现问题
- 从 argv[1] 转换为字符 * 字符串后有什么问题?
- 将字符数组转换为结构时出现问题. 结构的字符数组变量溢出
- 字符 * 未从重载运算符或内存管理问题正确返回
- 将utf16宽std::wstring转换为utf8窄std::string以获得罕见字符时出现问题
- 我在使用字符的函数时遇到了一些问题
- 用wchar_t处理 unicode 字符好吗?它不会引起任何问题吗?
- 将 c++ 字符串转换为常量字符 * 时出现问题
- C++程序,将整数输入转换为字符的问题
- 我通过迭代加法将二进制数转换为十进制并检查单个字符(请参阅代码)的方法有什么问题?
- C++ 初级面试问题:仅使用字符指针压缩字符序列的功能
- 通过比较字符设置字符串时出现问题
- 我的编辑距离递归代码中的字符类型有问题
- 获取“boost::文件系统::p ath”字符指针时出现问题
- C Unicode UTF-8解码字符的问题
- 类型转换问题:字符数组的元素转换为整数变量