当数组中未申请内存的指针成员,没进行内存分配,为什么指针成员的地址不为空
时间: 2023-11-02 12:37:44 浏览: 146
C++动态数组类的封装实例
在C/C++中,未初始化的指针变量默认指向一个未知的内存地址,这个地址通常是一个随机的值。因此,即使在数组中未申请内存的指针成员没有进行内存分配,其指针成员的地址也不为空,而是指向一个未知的内存地址。
需要注意的是,指针变量的值和指针变量所指向的内存地址是两个不同的概念。指针变量的值是指它所存储的地址值,而指针变量所指向的内存地址是指这个地址值所对应的内存地址。在C/C++中,指针变量的值可以是任意的地址值,包括0和未知的随机值,而指针变量所指向的内存地址则取决于指针变量的值。
因此,当数组中未申请内存的指针成员没有进行内存分配时,它的地址值并不为空,但它所指向的内存地址是未知的,因为没有为它分配内存空间。在访问这个指针成员时可能会导致程序崩溃或者产生未定义的行为,因此在使用数组时应该为每个指针成员分配内存空间。
阅读全文