常量数组:
const int arr[]={1,2,3,4,5};
常量指针数组:
const int g_test = 1;
typedef void * NEW_TYPE;
static const NEW_TYPE arr[] =
{
(void* const)&g_test /*&g_test默认是(const void*,指向常量的指针)类型, (void*) 编译器应会默认转成(void * const) */
};
const NEW_TYPE
不等同于const void *
, 而是等同于void * const
。
const void*
:
指向常量的指针
void * const
:
指针是常量,指向的地址不变,但是地址中存储的值可变。