const加不加?

2019-07-19 21:21发布

const u8 TEXT_Buffer[]={"!Good Luck to My Father!"};
为什么要加const,不加可以吗?const表示是固定在flash中,在程序运行时不能改变,那不加会有什么影响吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
27条回答
q546163199
2019-07-21 10:26
jiutianshenjian 发表于 2016-1-28 11:16
这跟你函数形参有关系。形参里没写const,是u8 *,你定义的是const u8类型数组的话,就得跟形参类型匹配。 ...

我把这个const问题总结下

如果不去掉const的话,,TEXT_Buffer是一个指向const u8型数组的指针,而函数的入口参数需要一个指向u8型数组的指针,所以必须将TEXT_Buffer强制转化为,一个指向u8型数组的指针

如果去掉const的话,TEXT_Buffer表示一个指向u8型数组的指针,所以在函数调用的时候,就可以直接写成TEXT_Buffer
应该就是这个意思了吧?

一周热门 更多>