c++ - 将字符数组地址存储在新数组中
问题描述
我在 Arduino 程序中有一个包含的文件。MCU是ESP32。
包含的文件是:
const char bitmap_1587[] PROGMEM = {248,254,254,230,241,231,247,199};
const char bitmap_1604[] PROGMEM = {249,254,254,254,0,191};
const char bitmap_1575[] PROGMEM = {7};
const char* char_addr[] = {&bitmap_1587,&bitmap_1604,&bitmap_1575};
当我编译代码时,返回此错误:
无法在初始化中将 'const char (*)[6] 转换为 'char*'
无法在初始化中将 'const char (*)[6]' 转换为 'char*'
无法在初始化中将 'const char (*)[1]' 转换为 'char*'
请帮我。我如何将 char 数组地址存储在另一个数组中。
解决方案
这是正确的:
const unsigned char bitmap_1587[] PROGMEM = { 248,254,254,230,241,231,247,199 };
const unsigned char bitmap_1604[] PROGMEM = { 249,254,254,254,0,191 };
const unsigned char bitmap_1575[] PROGMEM = { 7 };
const unsigned char* char_addr[] = { bitmap_1587,bitmap_1604,bitmap_1575,bitmap_1605,bitmap_32,bitmap_97,bitmap_98,bitmap_99,bitmap_1777,bitmap_1778,bitmap_1779 };
- 您需要
unsigned char
,因为您的值 > 127 - 您需要删除
&
sbitmap_1587
等已经是地址 - 你需要
const char* char_addr[]
,因为你有const
数组bitmap_...
。
推荐阅读
- reactjs - 如何检查变量是否在 React 中具有某些符号?
- python - 在 python 中使用 writerow 附加到我的 csv
- javascript - 如果选择了一个变量或选择了另一个变量,则显示 html 块
- c# - “提供给函数的缓冲区太小”证书签名的加密异常
- javascript - Material-UI 更改抽屉颜色
- php - htaccess 文件中的重定向代码和/或保持活动代码不起作用。如何让它们工作
- android - 查看寻呼机高度和回收器视图高度在滚动视图中不起作用
- javascript - 角度材料日期选择器格式语言环境
- r - ggplot2反转辅助y轴
- r - 设计代码以生成特定模式