0

私の環境はfedora17 64bit Pointerです:

int a[5] = {1,2,3,4,5};
int *p = (*int)(&a+1);
The value of *(p-1) is 5.
Assume &a is 0x7fffffffdf50.
I wonder know why (&a+1) is 0x7fffffffdf64 and why *(p-1) is 5? 

Function pointer:
Re-write 
void(*(*(fptr[5])(char*);
to
typedef_______?_______;
pf(*fptr)[5];
4

1 に答える 1

0

ポインターの割り当てを次のように修正します

int *p = (int*)(&a+1);
于 2013-09-05T11:23:52.910 に答える