指针的易错点

  • 指针容易越界操作
  • 指针叠加会不断改变指针方向
  • 返回局部变量地址
  • 不可以释放野指针

代码示例:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void test01()
{
   
        char*p = malloc(sizeof(char) * 64);
        //利用临时指针 操作里面的内存
        char*pp = p;
        for (int i = 0; i < 10; i++)
        {
   
               *pp = i + 97;
               printf("%c", *pp);
               pp++;//申请的首地址指针偏移后,就不可以利用这个指针释放堆区内存了
        }
        if (p != NULL)
        {
   
               free(p);
               p = NULL;
        }
}
int main()
{
   
        test01();
        return EXIT_SUCCESS;
}

更多文章,敬请关注微信公众号:YQ编程