-1
A
回答
2
const uint8_t *const data
本质上意味着该函数将不能更新参数data
或它指向的对象。 IOW,您不能将data
设置为指向函数内的其他对象。
简而言之:
const T *p -- p is writable, *p is not
T const *p -- same as above
T * const p -- *p is writable, p is not
const T * const p -- neither p nor *p are writable
T const * const p -- same as above
编辑
注意,要data
任何变化将不会在调用函数(不同于任何变化*data
)反映,何必使其const
?通常这是因为函数体需要在整个执行过程中保留该指针; IOW,如果你不小心更新了data
,你稍后会在函数中破坏某些东西。这只是保证这种改变不会发生的一种方式。
2
假设代码是在C或C++,第二个参数是常数指针恒定数据(和变量名是data
)。该函数很有前途,它最多可以读取但不写入data
参数指向的内存。在正常假设下,数据的类型是无符号字节。
4
第二个参数是const数据的const指针。
const uint8_t * const == uint8_t const * const
uint8_t const * const == const pointer to const uint8_t
为了帮助你,想向后阅读:
int*
- 指针为intint const *
- 指针const int的int * const
- 常量指针为int
等
因此在你的例子中,const uint8_t *const data
是“数据常量+ uint8_t const指针”=> const数据指针。
相关问题
- 1. 了解指针数组的指针作为函数的参数
- 2. 如何理解函数中的指针
- 3. 函数的指针参数
- 4. 函数指针不带指针参数
- 5. pthread_create参数函数指针
- 6. C++ - 指针函数参数
- 7. 参数列表中的函数指针
- 8. C++中指针参数的函数
- 9. 参考和指针的函数参数
- 10. 理解函数指针声明
- 11. 函数指针 - 参数传递给一个函数指针
- 12. Swift函数中指针参数的指针
- 13. 解释c指针参数
- 14. C++指向函数参数指针的指针
- 15. 了解c函数指针
- 16. c函数指针解释
- 17. 了解函数指针
- 18. 作为函数参数的双指针
- 19. 带有python参数的函数指针?
- 20. C指针作为函数的参数
- 21. 指针在C函数的参数
- 22. const volatile的指针函数参数
- 23. 空指针的函数参数
- 24. 已知参数的函数指针
- 25. C++指针的函数作为参数
- 26. 带指针参数的函数
- 27. 处理函数和指针
- 28. 太多的参数,函数指针中的参数太少
- 29. 函数指针指向一个函数指针的函数
- 30. 解释器中的函数指针
不,它是一个常量指针,它是一个常量数据 - 实际上是一个“仅输入”参数。指针本身也是常量的事实有点多余。 –