笑故挽风 2018-11-05 03:15 采纳率: 100%
浏览 281

指针可以指向内存,是不是没有分配?

Consider the following code:

int *p;
p = malloc(1);//p can point to 1 byte memory area

Why can p point to many memory areas like below?

printf("%p %p %p %p %p",p,p+1,p+2,p+3,p+4);

转载于:https://stackoverflow.com/questions/53147851/pointer-can-point-to-memory-are-that-is-not-allocated

  • 写回答

2条回答 默认 最新

  • 谁还没个明天 2018-11-05 03:20
    关注

    The cases p+1, p+2 and so on, cause undefined behaviour. As described by that page, your program doesn't comply with the rules of the C language so any behaviour you might get is meaningless.

    评论

报告相同问题?