首页 > 解决方案 > 如何在keil uVision中定义一个二进制数数组?

问题描述

我尝试在头文件的数组中添加后缀 'y' 后跟二进制数,但出现“'y' 附近的语法错误,预期的 '}'”。

extern unsigned int A[8]={
00111100y, 
01100110y, 
01100110y, 
01111110y, 
01100110y, 
01100110y, 
01100110y};

在此处输入图像描述

标签: arrayscbinary-datakeil

解决方案


发布的语法不正确。

不能extern在同一语句中将某些内容声明为 AND 对其进行初始化。

注意:extern通常意味着实际声明在另一个文件上),该文件将与当前文件链接。

建议:在当前文件中:

extern unsigned int smiley[8];

在其他一些文件中:

unsigned int smiley[8] =
{
    0, // 00000000
    1, // 00000001
};

注意大括号'{'和'}'的使用,而不是括号'('')'。

请注意评论开头的斜线的正确“倾斜”(从上到右)。

y不是标准 C 语法的一部分。也许它是 kyle 编译器中的一个扩展。但是,在研究 kyle 编译器文档时,我没有找到y数据类型。


推荐阅读