Как я могу написать свой код без этого предупреждения?
, как сказано в предупреждении, просто добавьте приведение, сделав
int* c = (int*) addressMap[0];
, чтобы избежать предупреждения initialization makes pointer from integer without a cast [-Wint-conversion]
Но я рекомендую вам не использовать intptr_t
, а строго int*
, если цель addressMap состоит в том, чтобы содержать указатели на int , благодаря чему выне нуждается в приведении вообще:
int * addressMap[2];
int* a=NULL;
int* b=NULL;
*a=10;
*b=20;
addressMap[0] = a;
addressMap[1] = b;
int* c = addressMap[0];