C++读书笔记—指针变量的定义与初始化

时间:2025-05-09 08:14:59

在了解指针变量与初始化之前,首先要弄清楚一点:什么是指针?

1、指针的内容实际上是一个地址,我们只要给指针赋值一个地址,它将会指向这个地址表示的内存空间,这也是指针的作用,我们要访问某个地址时,这个指针必须合法,否则容易出现系统崩溃,从而出现段错误。比如一个指针指向11楼的某个房间,但是该楼层只有10层,若贸然进去,则会出现严重后果

2、指针变量:就是指向某个内存地址的变量

    char *p_ch;

    int *p_i;

    p_ch 表示定义一个指向char的指针变量,简称字符指针变量,这里的字符和指针没有关系,字符是指p_ch指向内存地址里面存放的内容是字符类型数据。p_i是指向int类型数据的整型指针变量。

需要注意的是:对于指针变量,如果没有赋初值,这个随机值通常不是合法的,不要直接访问指针变量内存内容,不然很可能引起系统崩溃

3、指针的初始化:

    所谓的初始化就是让指针指向一个合法有效的内存空间,而分配空间的方法有两种:静态分配,动态分配。

    静态分配:让指针指向一个已经存在的内存空间,如:int a;  

                    这里的int在系统中已经分配了4个内存空间

    动态分配:这里是用函数来分配空间,在C语言是使用malloc(),而在C++中则可以用malloc()和new()