初级会员

- 积分
- 103
- 金钱
- 103
- 注册时间
- 2018-4-27
- 在线时间
- 40 小时
|
10金钱
void OLED_Show_CN(unsigned char x,unsigned char y,unsigned char *s)
{
unsigned char cnt = 0;
unsigned char i,j = 0;
cnt = sizeof(CN16)/sizeof(typeCN_GB16); //不知道为什么cnt永远为0
for(i=0; i<cnt; i++)
{
if((CN16.Index[0]==*(s))&&(CN16.Index[1]== *(s+1)))
{
OLED_Set_Cursor(x,y);
for(j=0; j<16; j++)
{
OLED_WriteData(CN16.Msk[j]);
}
OLED_Set_Cursor(x,y+1);
for(j=0; j<16; j++)
{
OLED_WriteData(CN16.Msk[j+16]);
}
}
}
}
/******这些在头文件
typedef struct
{
unsigned char Index[2]; |
最佳答案
查看完整内容[请看2#楼]
你分别单独显示一下sizeof(CN16)和sizeof(typeCN_GB16)的值是多少。
我怀疑你的CN16是个typeCN_GB16类型的数组,sizeof(CN16)是一个指针的长度,也就是4,sizeof(typeCN_GB16)是一个结构体长度,应该是大于4的,4/(>4的数)结果当然是0。
|