【发布时间】:2019-10-03 12:08:30
【问题描述】:
我想创建一个 char 数组并给出 8 位值。例如; buf[0] = 0000 0001; // 1 和 buf[1] = 0000 0010; //2 等等。
当我用断点观看时,我看到的 buf 是 empty。在其他帖子中,人们提供诸如“如果您想查看整数,请放置(无符号)强制转换”之类的建议,它仅适用于 cout。
我想要的只是用有序递增的数字填充一个 char 数组。我使用了 int 但它是 4 个字节,相反我认为给 uint8_t 更适合用数字填充 char 数组。
char *buf = new char[5];
for (uint8_t i = 0; i < 5; i++)
{
buf[i] = i;
}
【问题讨论】:
-
你用的是什么调试器?
-
你为什么使用 uint8_t 而不仅仅是 char?
-
你是怎么确定数组最后是空的?
-
代码看起来不错,只是值将从零开始,而不是像您在散文中指出的那样。
-
@Quentin 视觉工作室 2019