void test_vol(void)
{
uint8_t i;
for(i=0;i<5;i++)
{
logDebug("制造商id[%d]\r\n",device_manufacturer_id[i]);
}
}
打印出来的是67 43 43 32 108。
我以为是个例,所以重新定义一组新的全局变量,情况也是赋初值跟打印的不一致,需要重新赋值才行。
目前这个问题已经疑惑好久了,希望有人能帮忙解惑,感谢。
试过了赋不同的初值,其输出结果都是一样,不过改变了数组的长度,输出的结果就会改变。但是这个全局变量并没有在那边使用过,也没有看到明显的内存溢出之类的行为。
为啥 "{31, 32, 33, 34, 35}"要带双引号呢
你给数组赋值了个字符串
把双引号删了
兄弟,我怀疑你是编译器的问题,你可以随便弄个小例子。
类似在main 之前定义三个全局变量: